home *** CD-ROM | disk | FTP | other *** search
/ Aminet 37 / Aminet 37 (2000)(Schatztruhe)[!][Jun 2000].iso / Aminet / dev / lang / sofa.lha / sofa / smalleiffel / bin_c / compile_to_c14.c < prev    next >
C/C++ Source or Header  |  2000-03-25  |  105KB  |  3,949 lines

  1. /*
  2. -- ANSI C code generated by :
  3. -- SmallEiffel The GNU Eiffel Compiler -- Release (- 0.76Beta#1)--
  4. -- Copyright (C), 1994-98 - LORIA - UHP - CRIN - INRIA - FRANCE --
  5. -- Dominique COLNET and Suzanne COLLIN -    colnet@loria.fr     --
  6. --                  http://SmallEiffel.loria.fr/                --
  7. */
  8. #include "compile_to_c.h"
  9.  
  10.  
  11. void r257c_header_pass4(T257* C){
  12. X52c_header_pass4(r257run_type(C));
  13. }
  14.  
  15.  
  16. void r257with(T257* C,T0* a1,T0* a2){
  17. (/*SFN*/C->_start_position)=(/*RF2*/(((T257*)a1))->_start_position/*4*/);
  18. (/*SFN*/C->_like_what)=(/*RF2*/(((T257*)a1))->_like_what/*12*/);
  19. (/*SFN*/C->_written_mark)=(/*RF2*/(((T257*)a1))->_written_mark/*16*/);
  20. (/*SFN*/C->_run_feature)=a2;
  21. }
  22.  
  23.  
  24. T6 r257is_double(T257* C){
  25. T6 R=0;
  26. R=X52is_double(r257run_type(C));
  27. return R;
  28. }
  29.  
  30.  
  31. T6 r257is_none(T257* C){
  32. T6 R=0;
  33. R=X52is_none(r257run_type(C));
  34. return R;
  35. }
  36.  
  37.  
  38. T0* r257to_runnable(T257* C,T0* a1){
  39. T0* R=NULL;
  40. T0* _rt=NULL;
  41. T0* _rf=NULL;
  42. r257anchor_cycle_start(C);
  43. _rf=r49top_rf((T49*)(oBC13small_eiffel));
  44. /*[IF*/
  45. if((X334arguments(_rf))==((void*)(NULL))){
  46. r66add_position((/*RF2*/(C)->_start_position/*4*/));
  47. {T68 se_tmp0;
  48. r66add_position((*(se_tmp0=X334start_position(_rf),&se_tmp0)));
  49. }
  50. r257fatal_error(((T0*)ms14_9878));
  51. }
  52. /*FI]*/
  53. /*[IF*/
  54. if(((/*RF2*/(C)->_run_feature/*20*/))==((void*)(NULL))){
  55. (/*SFN*/C->_run_feature)=_rf;
  56. R=((T0*)(C));
  57. }
  58.  else if(((/*RF2*/(C)->_run_feature/*20*/))==((void*)(_rf))){
  59. R=((T0*)(C));
  60. }
  61. else{
  62. {T257*n=((T257*)malloc(sizeof(*n))/*24*/);
  63. *n=M257;
  64. r257with(n,(T0*)C,_rf);
  65. R=((T0*)n);
  66. }
  67. }
  68. /*FI]*/
  69. _rt=r257run_type(((T257*)R));
  70. /*[IF*/
  71. if(X52is_anchored(_rt)){
  72. _rt=X52to_runnable(_rt,a1);
  73. }
  74. /*FI]*/
  75. r257anchor_cycle_end(C);
  76. return R;
  77. }
  78.  
  79.  
  80. T6 r257is_pointer(T257* C){
  81. T6 R=0;
  82. R=X52is_pointer(r257run_type(C));
  83. return R;
  84. }
  85.  
  86.  
  87. void r257id_extra_information(T257* C,T0* a1){
  88. r48put_string(((T48*)a1),((T0*)ms52_9724));
  89. /*[IF*/
  90. if(r257is_reference(C)){
  91. r48put_string(((T48*)a1),((T0*)ms52_1476));
  92. }
  93. else{
  94. r48put_string(((T48*)a1),((T0*)ms52_759));
  95. }
  96. /*FI]*/
  97. }
  98.  
  99.  
  100. void r257gc_define1(T257* C){
  101. X52gc_define1(r257run_type(C));
  102. }
  103.  
  104.  
  105. void r257gc_mark_in(T257* C,T0* a1){
  106. r7append(((T7*)a1),((T0*)ms14_8764));
  107. r2append_in(r257id(C),a1);
  108. }
  109.  
  110.  
  111. T0* r257static_base_class_name(T257* C){
  112. T0* R=NULL;
  113. T0* _bc=NULL;
  114. _bc=r179static_result_base_class((T179*)((/*RF2*/(C)->_like_what/*12*/)));
  115. /*[IF*/
  116. if((_bc)!=((void*)(NULL))){
  117. R=(/*RF2*/(((T51*)_bc))->_name/*18*/);
  118. }
  119. /*FI]*/
  120. return R;
  121. }
  122.  
  123.  
  124. void r257c_type_for_external_in(T257* C,T0* a1){
  125. /*[IF*/
  126. if(r257is_reference(C)){
  127. r7append(((T7*)a1),((T0*)ms14_1736a));
  128. r7extend(((T7*)a1),((T3)'\52'));
  129. }
  130. else{
  131. r257c_type_for_result_in(C,a1);
  132. }
  133. /*FI]*/
  134. }
  135.  
  136.  
  137. void r257c_type_for_argument_in(T257* C,T0* a1){
  138. X52c_type_for_argument_in(r257run_type(C),a1);
  139. }
  140.  
  141.  
  142. T0* r257run_time_mark(T257* C){
  143. T0* R=NULL;
  144. /*[IF*/
  145. if((r257run_type(C))!=((void*)(NULL))){
  146. R=X52run_time_mark(r257run_type(C));
  147. }
  148. /*FI]*/
  149. return R;
  150. }
  151.  
  152.  
  153. T0* r257run_class(T257* C){
  154. T0* R=NULL;
  155. R=r49run_class(r257run_type(C));
  156. return R;
  157. }
  158.  
  159.  
  160. T6 r257is_dummy_expanded(T257* C){
  161. T6 R=0;
  162. R=X52is_dummy_expanded(r257run_type(C));
  163. return R;
  164. }
  165.  
  166.  
  167. void r257fatal_error(T0* a1){
  168. /*[IRF3.6append*/{T0* b1=a1;
  169. r7append((T7*)(oBC66explanation),b1);
  170. }/*]*/
  171. r66print_as_fatal_error((T66*)(oBC13eh));
  172. }
  173.  
  174.  
  175. T6 r257is_expanded(T257* C){
  176. T6 R=0;
  177. R=X52is_expanded(r257run_type(C));
  178. return R;
  179. }
  180.  
  181.  
  182. void r257c_type_for_result_in(T257* C,T0* a1){
  183. X52c_type_for_result_in(r257run_type(C),a1);
  184. }
  185.  
  186.  
  187. void r257c_type_for_target_in(T257* C,T0* a1){
  188. X52c_type_for_target_in(r257run_type(C),a1);
  189. }
  190.  
  191.  
  192. T0* r257expanded_initializer(T257* C){
  193. T0* R=NULL;
  194. R=X52expanded_initializer(r257run_type(C));
  195. return R;
  196. }
  197.  
  198.  
  199. T6 r257is_basic_eiffel_expanded(T257* C){
  200. T6 R=0;
  201. R=X52is_basic_eiffel_expanded(r257run_type(C));
  202. return R;
  203. }
  204.  
  205.  
  206. void r257demangling_in(T257* C,T0* a1){
  207. /*[IF*/
  208. if(r257is_reference(C)){
  209. r7extend(((T7*)a1),((T3)'R'));
  210. }
  211. else{
  212. r7extend(((T7*)a1),((T3)'E'));
  213. }
  214. /*FI]*/
  215. r7extend(((T7*)a1),((T3)'\40'));
  216. r7append(((T7*)a1),r257run_time_mark(C));
  217. }
  218.  
  219.  
  220. void r257c_initialize(T257* C){
  221. X52c_initialize(r257run_type(C));
  222. }
  223.  
  224.  
  225. T6 r257is_character(T257* C){
  226. T6 R=0;
  227. R=X52is_character(r257run_type(C));
  228. return R;
  229. }
  230.  
  231.  
  232. T0* r257base_class_name(T257* C){
  233. T0* R=NULL;
  234. R=X52base_class_name(r257run_type(C));
  235. return R;
  236. }
  237.  
  238.  
  239. void r257c_frame_descriptor(T257* C){
  240. r7extend((T7*)(oBC13c_frame_descriptor_format),((T3)'\45'));
  241. /*[IF*/
  242. if(r257is_reference(C)){
  243. r7extend((T7*)(oBC13c_frame_descriptor_format),((T3)'R'));
  244. }
  245. else{
  246. r7extend((T7*)(oBC13c_frame_descriptor_format),((T3)'E'));
  247. }
  248. /*FI]*/
  249. r2append_in(r257id(C),oBC13c_frame_descriptor_format);
  250. r7extend((T7*)(oBC13c_frame_descriptor_format),((T3)'\45'));
  251. }
  252.  
  253.  
  254. T6 r257is_bit(T257* C){
  255. T6 R=0;
  256. R=X52is_bit(r257run_type(C));
  257. return R;
  258. }
  259.  
  260.  
  261. void r257gc_info_in(T257* C,T0* a1){
  262. X52gc_info_in(r257run_type(C),a1);
  263. }
  264.  
  265.  
  266. void r257gc_define2(T257* C){
  267. X52gc_define2(r257run_type(C));
  268. }
  269.  
  270.  
  271. T0* r382add_comment(T382* C,T0* a1){
  272. T0* R=NULL;
  273. /*[IF*/
  274. if(((a1)==((void*)(NULL)))||((/*(IRF4.6count*/r44count(((T44*)((/*RF2*/(((T81*)a1))->_list/*8*/))))/*)*/)==(0))){
  275. R=((T0*)(C));
  276. }
  277. else{
  278. {T229*n=((T229*)malloc(sizeof(*n))/*12*/);
  279. *n=M229;
  280. r229make(n,(T0*)C,a1);
  281. R=((T0*)n);
  282. }
  283. }
  284. /*FI]*/
  285. return R;
  286. }
  287.  
  288.  
  289. void r382mapping_c_target(T382* C,T0* a1){
  290. X52mapping_cast(/*SSWARF2*//*X334current_type*/(/*RF2*/((T368*)((/*RF2*/(C)->_run_feature/*4*/)))->_current_type/*8*/));
  291. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  292. T3 b1=((T3)'C');
  293. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  294. }/*]*/
  295. /*]*/
  296. }
  297.  
  298.  
  299. T2 r382to_integer(void){
  300. T2 R=0;
  301. r382error(/*(IRF4.1start_position*/M68/*)*/,((T0*)ms14_45441));
  302. return R;
  303. }
  304.  
  305.  
  306. void r382error(T68 a1,T0* a2){
  307. r66add_position(a1);
  308. /*[IRF3.6append*/{T0* b1=a2;
  309. r7append((T7*)(oBC66explanation),b1);
  310. }/*]*/
  311. r66print_as_error((T66*)(oBC13eh));
  312. }
  313.  
  314.  
  315. T0* r382result_type(T382* C){
  316. T0* R=NULL;
  317. R=/*SSWARF2*//*X334current_type*/(/*RF2*/((T368*)((/*RF2*/(C)->_run_feature/*4*/)))->_current_type/*8*/);
  318. return R;
  319. }
  320.  
  321.  
  322. T0* r382static_result_base_class(T382* C){
  323. T0* R=NULL;
  324. R=X52base_class(r382result_type(C));
  325. return R;
  326. }
  327.  
  328.  
  329. void r382compile_to_c(T382* C){
  330. /*[IF*/
  331. if(X52is_user_expanded(r382result_type(C))){
  332. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  333. T3 b1=((T3)'\52');
  334. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  335. }/*]*/
  336. /*]*/
  337. }
  338. /*FI]*/
  339. r325print_current((T325*)(oBC13cpp));
  340. }
  341.  
  342.  
  343. void r292c_mapping_native_array_procedure(T0* a1,T0* a2){
  344. T0* _elt_type=NULL;
  345. _elt_type=X52run_type(r258item((T258*)(X52generic_list((/*RF2*/(((T337*)a1))->_current_type/*8*/))),1));
  346. /*[IF*/
  347. if((a2)==((void*)(((T0*)ms15_1035)))){
  348. /*[IF*/
  349. if(X52is_user_expanded(_elt_type)){
  350. /*[IF*/
  351. if(X52is_dummy_expanded(_elt_type)){
  352. /*[IF*/
  353. if(r325cannot_drop_all((T325*)(oBC13cpp))){
  354. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_330));
  355. /*]*/
  356. }
  357. /*FI]*/
  358. }
  359. else{
  360. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_6800));
  361. /*]*/
  362. r325put_target_as_value((T325*)(oBC13cpp));
  363. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_372));
  364. /*]*/
  365. r325put_ith_argument((T325*)(oBC13cpp),2);
  366. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_652));
  367. /*]*/
  368. r325put_ith_argument((T325*)(oBC13cpp),1);
  369. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_12670));
  370. /*]*/
  371. /*[IRF3.5put_integer*/r48put_integer(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),X52id(_elt_type));
  372. /*]*/
  373. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_604));
  374. /*]*/
  375. }
  376. /*FI]*/
  377. }
  378. else{
  379. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  380. T3 b1=((T3)'\50');
  381. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  382. }/*]*/
  383. /*]*/
  384. r325put_target_as_value((T325*)(oBC13cpp));
  385. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_264));
  386. /*]*/
  387. r325put_ith_argument((T325*)(oBC13cpp),2);
  388. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_582));
  389. /*]*/
  390. r325put_ith_argument((T325*)(oBC13cpp),1);
  391. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_330));
  392. /*]*/
  393. }
  394. /*FI]*/
  395. }
  396. /*FI]*/
  397. }
  398.  
  399.  
  400. void r292body_long_bit_put01(T0* a1,T3 a2,T3 a3,T3 a4){
  401. r7append((T7*)(oBC288body),((T0*)ms292_247835));
  402. r2append_in(X276unsigned_padding(a1),oBC288body);
  403. r7append((T7*)(oBC288body),((T0*)ms292_280));
  404. r7extend((T7*)(oBC288body),a4);
  405. r7append((T7*)(oBC288body),((T0*)ms292_48804));
  406. r7extend((T7*)(oBC288body),a4);
  407. r7append((T7*)(oBC288body),((T0*)ms292_411));
  408. r2append_in(X276unsigned_padding(a1),oBC288body);
  409. r7append((T7*)(oBC288body),((T0*)ms292_82123));
  410. r7extend((T7*)(oBC288body),a2);
  411. r7append((T7*)(oBC288body),((T0*)ms292_202));
  412. r7extend((T7*)(oBC288body),a3);
  413. r7append((T7*)(oBC288body),((T0*)ms292_122910));
  414. }
  415.  
  416.  
  417. void r292c_mapping_real_function(T0* a1,T0* a2){
  418. /*[IF*/
  419. if((r333arg_count(((T333*)a1)))==(1)){
  420. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  421. T3 b1=((T3)'\50');
  422. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  423. }/*]*/
  424. /*]*/
  425. r325put_target_as_value((T325*)(oBC13cpp));
  426. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  427. T3 b1=((T3)'\51');
  428. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  429. }/*]*/
  430. /*]*/
  431. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),a2);
  432. /*]*/
  433. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  434. T3 b1=((T3)'\50');
  435. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  436. }/*]*/
  437. /*]*/
  438. r325put_arguments((T325*)(oBC13cpp));
  439. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  440. T3 b1=((T3)'\51');
  441. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  442. }/*]*/
  443. /*]*/
  444. }
  445.  else if((((T0*)ms15_12978))==((void*)(a2))){
  446. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_2988));
  447. /*]*/
  448. r325put_target_as_value((T325*)(oBC13cpp));
  449. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_164));
  450. /*]*/
  451. }
  452. else{
  453. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),a2);
  454. /*]*/
  455. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  456. T3 b1=((T3)'\50');
  457. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  458. }/*]*/
  459. /*]*/
  460. r325put_target_as_value((T325*)(oBC13cpp));
  461. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  462. T3 b1=((T3)'\51');
  463. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  464. }/*]*/
  465. /*]*/
  466. }
  467. /*FI]*/
  468. }
  469.  
  470.  
  471. void r292c_mapping_standard_twin(T0* a1,T0* a2){
  472. /*[IF*/
  473. if(X52is_basic_eiffel_expanded(a2)){
  474. r325put_target_as_value((T325*)(oBC13cpp));
  475. }
  476.  else if(X52is_expanded(a2)){
  477. /*[IF*/
  478. if(X52is_dummy_expanded(a2)){
  479. r325put_target_as_target((T325*)(oBC13cpp));
  480. }
  481.  else if(X52is_native_array(a2)){
  482. r325put_target_as_target((T325*)(oBC13cpp));
  483. }
  484. else{
  485. r333default_mapping_function(((T333*)a1));
  486. }
  487. /*FI]*/
  488. }
  489. else{
  490. r333default_mapping_function(((T333*)a1));
  491. }
  492. /*FI]*/
  493. }
  494.  
  495.  
  496. void r292c_mapping_procedure(T0* a1,T0* a2,T0* a3){
  497. T0* _t=NULL;
  498. /*[IF*/
  499. if(((((T0*)ms15_1772))==((void*)(a3)))||((((T0*)ms15_27443))==((void*)(a3)))){
  500. _t=(/*RF2*/(((T337*)a1))->_current_type/*8*/);
  501. /*[IF*/
  502. if(X52is_reference(_t)){
  503. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_824));
  504. /*]*/
  505. /*[IRF3.5put_integer*/r48put_integer(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),X52id(_t));
  506. /*]*/
  507. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_369a));
  508. /*]*/
  509. r325put_target_as_value((T325*)(oBC13cpp));
  510. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_5691));
  511. /*]*/
  512. /*[IRF3.5put_integer*/r48put_integer(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),X52id(_t));
  513. /*]*/
  514. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_369));
  515. /*]*/
  516. r325put_ith_argument((T325*)(oBC13cpp),1);
  517. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_604));
  518. /*]*/
  519. }
  520.  else if(X52is_basic_eiffel_expanded(_t)){
  521. r325put_target_as_value((T325*)(oBC13cpp));
  522. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_138));
  523. /*]*/
  524. r325put_ith_argument((T325*)(oBC13cpp),1);
  525. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_138));
  526. /*]*/
  527. }
  528. else{
  529. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_9954));
  530. /*]*/
  531. r325put_target_as_target((T325*)(oBC13cpp));
  532. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_459));
  533. /*]*/
  534. /*[IRF3.5put_integer*/r48put_integer(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),X52id(_t));
  535. /*]*/
  536. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_4277));
  537. /*]*/
  538. r325put_ith_argument((T325*)(oBC13cpp),1);
  539. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_16800));
  540. /*]*/
  541. }
  542. /*FI]*/
  543. }
  544.  else if((((T0*)ms15_22248))==((void*)(a3))){
  545. /*[IF*/
  546. if(r325target_cannot_be_dropped((T325*)(oBC13cpp))){
  547. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_330));
  548. /*]*/
  549. }
  550. /*FI]*/
  551. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_5768));
  552. /*]*/
  553. r325put_ith_argument((T325*)(oBC13cpp),1);
  554. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_330));
  555. /*]*/
  556. }
  557.  else if((((T0*)ms15_15650))==((void*)(a3))){
  558. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_2420));
  559. /*]*/
  560. r325put_ith_argument((T325*)(oBC13cpp),2);
  561. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_6670));
  562. /*]*/
  563. r325put_ith_argument((T325*)(oBC13cpp),1);
  564. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_960));
  565. /*]*/
  566. }
  567.  else if((((T0*)ms15_53940))==((void*)(a3))){
  568. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_21789));
  569. /*]*/
  570. }
  571.  else if((((T0*)ms15_23829))==((void*)(a3))){
  572. /*[IF*/
  573. if(r325target_cannot_be_dropped((T325*)(oBC13cpp))){
  574. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_330));
  575. /*]*/
  576. }
  577. /*FI]*/
  578. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_2410));
  579. /*]*/
  580. r325put_ith_argument((T325*)(oBC13cpp),1);
  581. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_330));
  582. /*]*/
  583. }
  584.  else if((((T0*)ms15_13752))==((void*)(a3))){
  585. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_17745));
  586. /*]*/
  587. r325put_ith_argument((T325*)(oBC13cpp),1);
  588. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_604));
  589. /*]*/
  590. }
  591.  else if((((T0*)ms15_15070))==((void*)(a3))){
  592. r325put_c_inline_c((T325*)(oBC13cpp));
  593. }
  594.  else if((((T0*)ms15_15570))==((void*)(a3))){
  595. r325put_c_inline_h((T325*)(oBC13cpp));
  596. }
  597.  else if((((T0*)ms15_21300))==((void*)(a3))){
  598. r325put_trace_switch((T325*)(oBC13cpp));
  599. }
  600.  else if((((T0*)ms15_17448))==((void*)(a2))){
  601. r292c_mapping_native_array_procedure(a1,a3);
  602. }
  603.  else if((((T0*)ms15_1980))==((void*)(a2))){
  604. r292c_mapping_bit_procedure(a1,a3);
  605. }
  606.  else if((((T0*)ms15_33990))==((void*)(a3))){
  607. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_8360));
  608. /*]*/
  609. r325put_target_as_value((T325*)(oBC13cpp));
  610. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_9350));
  611. /*]*/
  612. r325put_ith_argument((T325*)(oBC13cpp),1);
  613. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_4656));
  614. /*]*/
  615. }
  616.  else if((((T0*)ms15_27580))==((void*)(a3))){
  617. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_131666));
  618. /*]*/
  619. r325put_target_as_value((T325*)(oBC13cpp));
  620. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_115444));
  621. /*]*/
  622. r325put_ith_argument((T325*)(oBC13cpp),2);
  623. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_23226));
  624. /*]*/
  625. r325put_ith_argument((T325*)(oBC13cpp),1);
  626. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_6071));
  627. /*]*/
  628. }
  629.  else if((((T0*)ms15_12915))==((void*)(a3))){
  630. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_17190));
  631. /*]*/
  632. r325put_ith_argument((T325*)(oBC13cpp),1);
  633. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_6740));
  634. /*]*/
  635. r325put_ith_argument((T325*)(oBC13cpp),2);
  636. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_604));
  637. /*]*/
  638. }
  639.  else if((((T0*)ms15_12915a))==((void*)(a3))){
  640. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_17520));
  641. /*]*/
  642. r325put_ith_argument((T325*)(oBC13cpp),1);
  643. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_604));
  644. /*]*/
  645. }
  646.  else if((((T0*)ms15_32730))==((void*)(a3))){
  647. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_43902));
  648. /*]*/
  649. r325put_ith_argument((T325*)(oBC13cpp),1);
  650. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_330));
  651. /*]*/
  652. }
  653. /*FI]*/
  654. }
  655.  
  656.  
  657. void r292c_mapping_integer_function(T0* a1,T0* a2){
  658. /*[IF*/
  659. if((r333arg_count(((T333*)a1)))==(1)){
  660. /*[IF*/
  661. if((((T0*)ms15_47))==((void*)(a2))){
  662. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_1290));
  663. /*]*/
  664. }
  665. /*FI]*/
  666. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  667. T3 b1=((T3)'\50');
  668. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  669. }/*]*/
  670. /*]*/
  671. r325put_target_as_value((T325*)(oBC13cpp));
  672. /*[IF*/
  673. if((((T0*)ms15_47))==((void*)(a2))){
  674. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  675. T3 b1=((T3)'\51');
  676. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  677. }/*]*/
  678. /*]*/
  679. }
  680. /*FI]*/
  681. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  682. T3 b1=((T3)'\51');
  683. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  684. }/*]*/
  685. /*]*/
  686. /*[IF*/
  687. if((((T0*)ms15_188))==((void*)(a2))){
  688. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  689. T3 b1=((T3)'\57');
  690. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  691. }/*]*/
  692. /*]*/
  693. }
  694.  else if((((T0*)ms15_368))==((void*)(a2))){
  695. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  696. T3 b1=((T3)'\45');
  697. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  698. }/*]*/
  699. /*]*/
  700. }
  701. else{
  702. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),a2);
  703. /*]*/
  704. }
  705. /*FI]*/
  706. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  707. T3 b1=((T3)'\50');
  708. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  709. }/*]*/
  710. /*]*/
  711. r325put_arguments((T325*)(oBC13cpp));
  712. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  713. T3 b1=((T3)'\51');
  714. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  715. }/*]*/
  716. /*]*/
  717. }
  718.  else if((((T0*)ms15_22716))==((void*)(a2))){
  719. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_2976));
  720. /*]*/
  721. r325put_target_as_value((T325*)(oBC13cpp));
  722. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_164));
  723. /*]*/
  724. }
  725.  else if((((T0*)ms15_7326))==((void*)(a2))){
  726. r325put_target_as_value((T325*)(oBC13cpp));
  727. }
  728. else{
  729. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),a2);
  730. /*]*/
  731. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  732. T3 b1=((T3)'\50');
  733. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  734. }/*]*/
  735. /*]*/
  736. r325put_target_as_value((T325*)(oBC13cpp));
  737. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  738. T3 b1=((T3)'\51');
  739. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  740. }/*]*/
  741. /*]*/
  742. }
  743. /*FI]*/
  744. }
  745.  
  746.  
  747. void r292c_mapping_double_function(T0* a1,T0* a2){
  748. /*[IF*/
  749. if((((T0*)ms15_94))==((void*)(a2))){
  750. r43add_lib_math((T43*)(r292system_tools()));
  751. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_2110));
  752. /*]*/
  753. r325put_target_as_value((T325*)(oBC13cpp));
  754. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_8536));
  755. /*]*/
  756. r325put_arguments((T325*)(oBC13cpp));
  757. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_164));
  758. /*]*/
  759. }
  760.  else if((((T0*)ms15_22824a))==((void*)(a2))){
  761. r43add_lib_math((T43*)(r292system_tools()));
  762. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms15_2730a));
  763. /*]*/
  764. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  765. T3 b1=((T3)'\50');
  766. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  767. }/*]*/
  768. /*]*/
  769. r325put_target_as_value((T325*)(oBC13cpp));
  770. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  771. T3 b1=((T3)'\51');
  772. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  773. }/*]*/
  774. /*]*/
  775. }
  776.  else if((((T0*)ms15_56720))==((void*)(a2))){
  777. r43add_lib_math((T43*)(r292system_tools()));
  778. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_10692));
  779. /*]*/
  780. r325put_target_as_value((T325*)(oBC13cpp));
  781. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_164));
  782. /*]*/
  783. }
  784.  else if((((T0*)ms15_9051))==((void*)(a2))){
  785. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_2982));
  786. /*]*/
  787. r325put_target_as_value((T325*)(oBC13cpp));
  788. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_164));
  789. /*]*/
  790. }
  791.  else if((((/*RF2*/(((T7*)a2))->_count/*4*/))<=(2))&&((r333arg_count(((T333*)a1)))==(1))){
  792. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  793. T3 b1=((T3)'\50');
  794. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  795. }/*]*/
  796. /*]*/
  797. r325put_target_as_value((T325*)(oBC13cpp));
  798. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  799. T3 b1=((T3)'\51');
  800. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  801. }/*]*/
  802. /*]*/
  803. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),a2);
  804. /*]*/
  805. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  806. T3 b1=((T3)'\50');
  807. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  808. }/*]*/
  809. /*]*/
  810. r325put_arguments((T325*)(oBC13cpp));
  811. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  812. T3 b1=((T3)'\51');
  813. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  814. }/*]*/
  815. /*]*/
  816. }
  817. else{
  818. r43add_lib_math((T43*)(r292system_tools()));
  819. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),a2);
  820. /*]*/
  821. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  822. T3 b1=((T3)'\50');
  823. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  824. }/*]*/
  825. /*]*/
  826. r325put_target_as_value((T325*)(oBC13cpp));
  827. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  828. T3 b1=((T3)'\51');
  829. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  830. }/*]*/
  831. /*]*/
  832. }
  833. /*FI]*/
  834. }
  835.  
  836.  
  837. void r292c_define_function_bit(T0* a1,T0* a2){
  838. T6 _no_check=0;
  839. T0* _type_bit=NULL;
  840. _type_bit=(/*RF2*/(((T333*)a1))->_current_type/*8*/);
  841. if(NULL!=(_type_bit)){
  842. switch(((T0*)_type_bit)->id){
  843. case 275:case 277:
  844. break;
  845. default:
  846. _type_bit=NULL;
  847. }
  848. }_no_check=r47no_check((T47*)(oBC13run_control));
  849. /*[IF*/
  850. if((((T0*)ms15_2765a))==((void*)(a2))){
  851. }
  852.  else if((((T0*)ms15_1724))==((void*)(a2))){
  853. /*[IF*/
  854. if(X276is_c_unsigned_ptr(_type_bit)){
  855. r7copy((T7*)(oBC288body),((T0*)ms292_94858));
  856. r2append_in(X276unsigned_padding(_type_bit),oBC288body);
  857. r7append((T7*)(oBC288body),((T0*)ms292_256410));
  858. r2append_in(X276unsigned_padding(_type_bit),oBC288body);
  859. r7append((T7*)(oBC288body),((T0*)ms292_42432));
  860. r333c_define_with_body(((T333*)a1),oBC288body);
  861. }
  862.  else if(_no_check){
  863. r7copy((T7*)(oBC288body),((T0*)ms292_25146));
  864. r2append_in(X276nb(_type_bit),oBC288body);
  865. r7append((T7*)(oBC288body),((T0*)ms292_3730));
  866. r333c_define_with_body(((T333*)a1),oBC288body);
  867. }
  868. /*FI]*/
  869. }
  870.  else if((((T0*)ms15_552))==((void*)(a2))){
  871. /*[IF*/
  872. if(X276is_c_unsigned_ptr(_type_bit)){
  873. r292fe_long_bit(a1);
  874. }
  875. else{
  876. r333c_define_with_body(((T333*)a1),((T0*)ms292_9000));
  877. }
  878. /*FI]*/
  879. }
  880.  else if((((T0*)ms15_564))==((void*)(a2))){
  881. /*[IF*/
  882. if(X276is_c_unsigned_ptr(_type_bit)){
  883. r292fe_long_bit(a1);
  884. }
  885. else{
  886. r333c_define_with_body(((T333*)a1),((T0*)ms292_9020));
  887. }
  888. /*FI]*/
  889. }
  890.  else if((((T0*)ms15_1744))==((void*)(a2))){
  891. /*[IF*/
  892. if(X276is_c_unsigned_ptr(_type_bit)){
  893. r7copy((T7*)(oBC288body),((T0*)ms292_94858a));
  894. r2append_in(X276unsigned_padding(_type_bit),oBC288body);
  895. r7extend((T7*)(oBC288body),((T3)'\53'));
  896. r2append_in((X276nb(_type_bit))-(1),oBC288body);
  897. r7append((T7*)(oBC288body),((T0*)ms292_185088));
  898. r2append_in((X276nb(_type_bit))-(1),oBC288body);
  899. r7extend((T7*)(oBC288body),((T3)'\53'));
  900. r2append_in(X276unsigned_padding(_type_bit),oBC288body);
  901. r7append((T7*)(oBC288body),((T0*)ms292_42432a));
  902. r333c_define_with_body(((T333*)a1),oBC288body);
  903. }
  904.  else if(_no_check){
  905. r7copy((T7*)(oBC288body),((T0*)ms292_12825));
  906. r333c_define_with_body(((T333*)a1),oBC288body);
  907. }
  908. /*FI]*/
  909. }
  910. /*FI]*/
  911. }
  912.  
  913.  
  914. void r292c_define_procedure(T0* a1,T0* a2,T0* a3){
  915. /*[IF*/
  916. if((((T0*)ms15_1980))==((void*)(a2))){
  917. r292c_define_procedure_bit(a1,a3);
  918. }
  919. /*FI]*/
  920. }
  921.  
  922.  
  923. void r292c_mapping_native_array_function(T0* a1,T0* a2){
  924. T6 _tcbd=0;
  925. T0* _elt_type=NULL;
  926. T0* _ct=NULL;
  927. _ct=(/*RF2*/(((T333*)a1))->_current_type/*8*/);
  928. _elt_type=X52run_type(r258item((T258*)(X52generic_list(_ct)),1));
  929. /*[IF*/
  930. if((((T0*)ms15_27272))==((void*)(a2))){
  931. _tcbd=r325target_cannot_be_dropped((T325*)(oBC13cpp));
  932. /*[IF*/
  933. if(_tcbd){
  934. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  935. T3 b1=((T3)'\54');
  936. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  937. }/*]*/
  938. /*]*/
  939. }
  940. /*FI]*/
  941. r7copy((T7*)(oBC292tmp_string),((T0*)ms14_6996));
  942. r7extend((T7*)(oBC292tmp_string),((T3)'\50'));
  943. X52c_type_for_argument_in(_elt_type,oBC292tmp_string);
  944. r7extend((T7*)(oBC292tmp_string),((T3)'\51'));
  945. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),oBC292tmp_string);
  946. /*]*/
  947. /*[IF*/
  948. if(_tcbd){
  949. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  950. T3 b1=((T3)'\51');
  951. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  952. }/*]*/
  953. /*]*/
  954. }
  955. /*FI]*/
  956. }
  957.  else if((a2)==((void*)(((T0*)ms15_6702)))){
  958. /*[IF*/
  959. if((X52expanded_initializer(_elt_type))==((void*)(NULL))){
  960. _tcbd=r325target_cannot_be_dropped((T325*)(oBC13cpp));
  961. /*[IF*/
  962. if(_tcbd){
  963. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  964. T3 b1=((T3)'\54');
  965. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  966. }/*]*/
  967. /*]*/
  968. }
  969. /*FI]*/
  970. /*[IF*/
  971. if((/*RF2*/((T344*)(oBC13gc_handler))->_is_off/*0*/)){
  972. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_492));
  973. /*]*/
  974. /*[IRF3.5put_integer*/r48put_integer(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),X52id(_ct));
  975. /*]*/
  976. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_6705));
  977. /*]*/
  978. r325put_ith_argument((T325*)(oBC13cpp),1);
  979. r7copy((T7*)(oBC292tmp_string),((T0*)ms292_6456));
  980. X52c_type_for_result_in(_elt_type,oBC292tmp_string);
  981. r7append((T7*)(oBC292tmp_string),((T0*)ms292_656));
  982. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),oBC292tmp_string);
  983. /*]*/
  984. }
  985. else{
  986. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_990));
  987. /*]*/
  988. /*[IRF3.5put_integer*/r48put_integer(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),X52id((/*RF2*/(((T333*)a1))->_current_type/*8*/)));
  989. /*]*/
  990. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  991. T3 b1=((T3)'\50');
  992. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  993. }/*]*/
  994. /*]*/
  995. r325put_ith_argument((T325*)(oBC13cpp),1);
  996. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  997. T3 b1=((T3)'\51');
  998. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  999. }/*]*/
  1000. /*]*/
  1001. }
  1002. /*FI]*/
  1003. /*[IF*/
  1004. if(_tcbd){
  1005. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1006. T3 b1=((T3)'\51');
  1007. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1008. }/*]*/
  1009. /*]*/
  1010. }
  1011. /*FI]*/
  1012. }
  1013. else{
  1014. r333default_mapping_function(((T333*)a1));
  1015. }
  1016. /*FI]*/
  1017. }
  1018.  else if((a2)==((void*)(((T0*)ms15_22788)))){
  1019. _tcbd=r325target_cannot_be_dropped((T325*)(oBC13cpp));
  1020. /*[IF*/
  1021. if(_tcbd){
  1022. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1023. T3 b1=((T3)'\54');
  1024. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1025. }/*]*/
  1026. /*]*/
  1027. }
  1028. /*FI]*/
  1029. r325put_ith_argument((T325*)(oBC13cpp),1);
  1030. /*[IF*/
  1031. if(_tcbd){
  1032. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1033. T3 b1=((T3)'\51');
  1034. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1035. }/*]*/
  1036. /*]*/
  1037. }
  1038. /*FI]*/
  1039. }
  1040. else{
  1041. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1042. T3 b1=((T3)'\50');
  1043. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1044. }/*]*/
  1045. /*]*/
  1046. r325put_target_as_value((T325*)(oBC13cpp));
  1047. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_264a));
  1048. /*]*/
  1049. r325put_ith_argument((T325*)(oBC13cpp),1);
  1050. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1051. T3 b1=((T3)'\135');
  1052. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1053. }/*]*/
  1054. /*]*/
  1055. }
  1056. /*FI]*/
  1057. }
  1058.  
  1059.  
  1060. void r292c_define_procedure_bit(T0* a1,T0* a2){
  1061. T0* _type_bit=NULL;
  1062. _type_bit=(/*RF2*/(((T337*)a1))->_current_type/*8*/);
  1063. if(NULL!=(_type_bit)){
  1064. switch(((T0*)_type_bit)->id){
  1065. case 275:case 277:
  1066. break;
  1067. default:
  1068. _type_bit=NULL;
  1069. }
  1070. }/*[IF*/
  1071. if((((T0*)ms15_2440))==((void*)(a2))){
  1072. /*[IF*/
  1073. if(X276is_c_unsigned_ptr(_type_bit)){
  1074. /*[IRF3.3clear*/((((T7*)((T7*)(oBC288body))))->_count)=(0);
  1075. /*]*/
  1076. r292body_long_bit_put01(_type_bit,((T3)'\46'),((T3)'\176'),((T3)'1'));
  1077. r337c_define_with_body(((T337*)a1),oBC288body);
  1078. }
  1079. /*FI]*/
  1080. }
  1081.  else if((((T0*)ms15_2445))==((void*)(a2))){
  1082. /*[IF*/
  1083. if(X276is_c_unsigned_ptr(_type_bit)){
  1084. /*[IRF3.3clear*/((((T7*)((T7*)(oBC288body))))->_count)=(0);
  1085. /*]*/
  1086. r292body_long_bit_put01(_type_bit,((T3)'\174'),((T3)'\40'),((T3)'1'));
  1087. r337c_define_with_body(((T337*)a1),oBC288body);
  1088. }
  1089. /*FI]*/
  1090. }
  1091.  else if((((T0*)ms15_1035))==((void*)(a2))){
  1092. /*[IF*/
  1093. if(X276is_c_unsigned_ptr(_type_bit)){
  1094. /*[IRF3.3clear*/((((T7*)((T7*)(oBC288body))))->_count)=(0);
  1095. /*]*/
  1096. r7append((T7*)(oBC288body),((T0*)ms292_3241));
  1097. r292body_long_bit_put01(_type_bit,((T3)'\174'),((T3)'\40'),((T3)'2'));
  1098. r7append((T7*)(oBC288body),((T0*)ms14_1700));
  1099. r292body_long_bit_put01(_type_bit,((T3)'\46'),((T3)'\176'),((T3)'2'));
  1100. r337c_define_with_body(((T337*)a1),oBC288body);
  1101. }
  1102. /*FI]*/
  1103. }
  1104. /*FI]*/
  1105. }
  1106.  
  1107.  
  1108. void r292c_define_function(T0* a1,T0* a2,T0* a3){
  1109. T0* _rf7=NULL;
  1110. T0* _rf=NULL;
  1111. T0* _rc=NULL;
  1112. T0* _ct=NULL;
  1113. T0* _elt_type=NULL;
  1114. /*[IF*/
  1115. if((((T0*)ms15_1980))==((void*)(a2))){
  1116. r292c_define_function_bit(a1,a3);
  1117. }
  1118.  else if((((T0*)ms15_6307))==((void*)(a2))){
  1119. /*[IF*/
  1120. if(((((T0*)ms15_11144))==((void*)(a3)))||((((T0*)ms15_40358))==((void*)(a3)))){
  1121. _ct=(/*RF2*/(((T333*)a1))->_current_type/*8*/);
  1122. _rc=X52run_class(_ct);
  1123. /*[IF*/
  1124. if(X52is_basic_eiffel_expanded(_ct)){
  1125. }
  1126.  else if(X52is_native_array(_ct)){
  1127. }
  1128.  else if(X52is_bit(_ct)){
  1129. }
  1130.  else if(r50is_tagged(((T50*)_rc))){
  1131. r333c_define_with_body(((T333*)a1),((T0*)ms292_143961));
  1132. }
  1133.  else if((r50writable_attributes(((T50*)_rc)))==((void*)(NULL))){
  1134. /*[IF*/
  1135. if(r47boost((T47*)(oBC13run_control))){
  1136. }
  1137. else{
  1138. r333c_define_with_body(((T333*)a1),((T0*)ms292_1004));
  1139. }
  1140. /*FI]*/
  1141. }
  1142.  else if(r47boost((T47*)(oBC13run_control))){
  1143. }
  1144. else{
  1145. r333c_define_with_body(((T333*)a1),((T0*)ms292_57064));
  1146. }
  1147. /*FI]*/
  1148. }
  1149.  else if((((T0*)ms15_25584))==((void*)(a3))){
  1150. r292c_define_standard_twin(a1,(/*RF2*/(((T333*)a1))->_current_type/*8*/));
  1151. }
  1152.  else if((((T0*)ms15_1800))==((void*)(a3))){
  1153. _ct=(/*RF2*/(((T333*)a1))->_current_type/*8*/);
  1154. _rc=X52run_class(_ct);
  1155. _rf=r50get_copy(((T50*)_rc));
  1156. _rf7=_rf;
  1157. if(NULL!=(_rf7)){
  1158. switch(((T0*)_rf7)->id){
  1159. case 337:
  1160. break;
  1161. default:
  1162. _rf7=NULL;
  1163. }
  1164. }/*[IF*/
  1165. if((_rf7)!=((void*)(NULL))){
  1166. r292c_define_standard_twin(a1,_ct);
  1167. }
  1168. else{
  1169. r292c_define_twin(a1,_ct,_rc,_rf);
  1170. }
  1171. /*FI]*/
  1172. }
  1173.  else if((((T0*)ms15_13491))==((void*)(a3))){
  1174. _ct=(/*RF2*/(((T333*)a1))->_current_type/*8*/);
  1175. /*[IF*/
  1176. if(X52is_basic_eiffel_expanded(_ct)){
  1177. r333c_define_with_body(((T333*)a1),((T0*)ms292_1395));
  1178. }
  1179.  else if(X52is_native_array(_ct)){
  1180. r66add_type(_ct,((T0*)ms14_4684050));
  1181. r66print_as_fatal_error((T66*)(oBC13eh));
  1182. }
  1183. else{
  1184. /*[IRF3.3clear*/((((T7*)((T7*)(oBC288body))))->_count)=(0);
  1185. /*]*/
  1186. r50deep_twin_in((T50*)(X52run_class(_ct)),oBC288body);
  1187. r333c_define_with_body(((T333*)a1),oBC288body);
  1188. }
  1189. /*FI]*/
  1190. }
  1191.  else if((((T0*)ms15_24960))==((void*)(a3))){
  1192. _ct=(/*RF2*/(((T333*)a1))->_current_type/*8*/);
  1193. /*[IF*/
  1194. if(X52is_basic_eiffel_expanded(_ct)){
  1195. r333c_define_with_body(((T333*)a1),((T0*)ms292_4631));
  1196. }
  1197.  else if(X52is_native_array(_ct)){
  1198. r66add_type(_ct,((T0*)ms14_4684050));
  1199. r66print_as_fatal_error((T66*)(oBC13eh));
  1200. }
  1201. else{
  1202. /*[IRF3.3clear*/((((T7*)((T7*)(oBC288body))))->_count)=(0);
  1203. /*]*/
  1204. r50is_deep_equal_in((T50*)(X52run_class(_ct)),oBC288body);
  1205. r333c_define_with_body(((T333*)a1),oBC288body);
  1206. }
  1207. /*FI]*/
  1208. }
  1209. /*FI]*/
  1210. }
  1211.  else if((((T0*)ms15_17448))==((void*)(a2))){
  1212. /*[IF*/
  1213. if((((T0*)ms15_6702))==((void*)(a3))){
  1214. _ct=(/*RF2*/(((T333*)a1))->_current_type/*8*/);
  1215. _elt_type=X52run_type(r258item((T258*)(X52generic_list(_ct)),1));
  1216. /*[IF*/
  1217. if((X52expanded_initializer(_elt_type))!=((void*)(NULL))){
  1218. /*[IRF3.3clear*/((((T7*)((T7*)(oBC288body))))->_count)=(0);
  1219. /*]*/
  1220. r7append((T7*)(oBC288body),((T0*)ms292_286));
  1221. /*[IF*/
  1222. if((/*RF2*/((T344*)(oBC13gc_handler))->_is_off/*0*/)){
  1223. r7append((T7*)(oBC288body),((T0*)ms292_26895));
  1224. r2append_in(X52id(_elt_type),oBC288body);
  1225. r7append((T7*)(oBC288body),((T0*)ms292_166));
  1226. }
  1227. else{
  1228. r7append((T7*)(oBC288body),((T0*)ms292_16640));
  1229. r2append_in(X52id(_ct),oBC288body);
  1230. r7extend((T7*)(oBC288body),((T3)'\50'));
  1231. }
  1232. /*FI]*/
  1233. r7append((T7*)(oBC288body),((T0*)ms292_5640));
  1234. r2append_in(X52id(_ct),oBC288body);
  1235. r7append((T7*)(oBC288body),((T0*)ms292_9190));
  1236. /*[IF*/
  1237. if(r47no_check((T47*)(oBC13run_control))){
  1238. r7append((T7*)(oBC288body),((T0*)ms292_1188));
  1239. }
  1240. /*FI]*/
  1241. r7append((T7*)(oBC288body),((T0*)ms292_3663));
  1242. r333c_define_with_body(((T333*)a1),oBC288body);
  1243. }
  1244. /*FI]*/
  1245. }
  1246. /*FI]*/
  1247. }
  1248. /*FI]*/
  1249. }
  1250.  
  1251.  
  1252. void r292c_mapping_function(T0* a1,T0* a2,T0* a3){
  1253. T0* _type_bit=NULL;
  1254. T6 _basic_eq=0;
  1255. T0* _rf7=NULL;
  1256. T0* _rf=NULL;
  1257. T0* _rc=NULL;
  1258. T0* _ct=NULL;
  1259. T6 _cbd=0;
  1260. /*[IF*/
  1261. if((((T0*)ms15_7380))==((void*)(a3))){
  1262. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms15_7380));
  1263. /*]*/
  1264. }
  1265.  else if((((T0*)ms15_2730))==((void*)(a3))){
  1266. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms15_2730));
  1267. /*]*/
  1268. }
  1269.  else if((((T0*)ms15_7530))==((void*)(a3))){
  1270. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms15_7530));
  1271. /*]*/
  1272. }
  1273.  else if((((T0*)ms15_6307))==((void*)(a2))){
  1274. /*[IF*/
  1275. if((((T0*)ms15_30660))==((void*)(a3))){
  1276. r325put_generating_type((T325*)(oBC13cpp),(/*RF2*/(((T333*)a1))->_current_type/*8*/));
  1277. }
  1278.  else if((((T0*)ms15_13995))==((void*)(a3))){
  1279. r325put_generator((T325*)(oBC13cpp),(/*RF2*/(((T333*)a1))->_current_type/*8*/));
  1280. }
  1281.  else if((((T0*)ms15_16850))==((void*)(a3))){
  1282. r325put_to_pointer((T325*)(oBC13cpp));
  1283. }
  1284.  else if((((T0*)ms15_17886))==((void*)(a3))){
  1285. r325put_object_size((T325*)(oBC13cpp),(/*RF2*/(((T333*)a1))->_current_type/*8*/));
  1286. }
  1287.  else if(((((T0*)ms15_11144))==((void*)(a3)))||((((T0*)ms15_40358))==((void*)(a3)))){
  1288. _ct=(/*RF2*/(((T333*)a1))->_current_type/*8*/);
  1289. _rc=X52run_class(_ct);
  1290. /*[IF*/
  1291. if(X52is_basic_eiffel_expanded(_ct)){
  1292. _basic_eq=1;
  1293. }
  1294.  else if(X52is_native_array(_ct)){
  1295. _basic_eq=1;
  1296. }
  1297.  else if(X52is_bit(_ct)){
  1298. _type_bit=_ct;
  1299. if(NULL!=(_type_bit)){
  1300. switch(((T0*)_type_bit)->id){
  1301. case 275:case 277:
  1302. break;
  1303. default:
  1304. _type_bit=NULL;
  1305. }
  1306. }_basic_eq=!(X276is_c_unsigned_ptr(_type_bit));
  1307. }
  1308. /*FI]*/
  1309. /*[IF*/
  1310. if(_basic_eq){
  1311. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1312. T3 b1=((T3)'\50');
  1313. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1314. }/*]*/
  1315. /*]*/
  1316. r325put_target_as_value((T325*)(oBC13cpp));
  1317. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1318. T3 b1=((T3)'\51');
  1319. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1320. }/*]*/
  1321. /*]*/
  1322. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_244));
  1323. /*]*/
  1324. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1325. T3 b1=((T3)'\50');
  1326. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1327. }/*]*/
  1328. /*]*/
  1329. r325put_ith_argument((T325*)(oBC13cpp),1);
  1330. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1331. T3 b1=((T3)'\51');
  1332. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1333. }/*]*/
  1334. /*]*/
  1335. }
  1336.  else if(r50is_tagged(((T50*)_rc))){
  1337. r333default_mapping_function(((T333*)a1));
  1338. }
  1339.  else if((r50writable_attributes(((T50*)_rc)))==((void*)(NULL))){
  1340. /*[IF*/
  1341. if(r47boost((T47*)(oBC13run_control))){
  1342. _cbd=r325cannot_drop_all((T325*)(oBC13cpp));
  1343. /*[IF*/
  1344. if(_cbd){
  1345. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1346. T3 b1=((T3)'\54');
  1347. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1348. }/*]*/
  1349. /*]*/
  1350. }
  1351. /*FI]*/
  1352. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1353. T3 b1=((T3)'1');
  1354. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1355. }/*]*/
  1356. /*]*/
  1357. /*[IF*/
  1358. if(_cbd){
  1359. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1360. T3 b1=((T3)'\51');
  1361. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1362. }/*]*/
  1363. /*]*/
  1364. }
  1365. /*FI]*/
  1366. }
  1367. else{
  1368. r333default_mapping_function(((T333*)a1));
  1369. }
  1370. /*FI]*/
  1371. }
  1372.  else if(r47boost((T47*)(oBC13run_control))){
  1373. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_6168));
  1374. /*]*/
  1375. r325put_target_as_target((T325*)(oBC13cpp));
  1376. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1377. T3 b1=((T3)'\54');
  1378. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1379. }/*]*/
  1380. /*]*/
  1381. /*[IF*/
  1382. if(X52is_user_expanded(_ct)){
  1383. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1384. T3 b1=((T3)'\46');
  1385. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1386. }/*]*/
  1387. /*]*/
  1388. }
  1389. /*FI]*/
  1390. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1391. T3 b1=((T3)'\50');
  1392. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1393. }/*]*/
  1394. /*]*/
  1395. r325put_ith_argument((T325*)(oBC13cpp),1);
  1396. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_12670a));
  1397. /*]*/
  1398. /*[IRF3.5put_integer*/r48put_integer(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),(/*RF2*/(((T50*)_rc))->_id/*4*/));
  1399. /*]*/
  1400. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_164));
  1401. /*]*/
  1402. }
  1403. else{
  1404. r333default_mapping_function(((T333*)a1));
  1405. }
  1406. /*FI]*/
  1407. }
  1408.  else if((((T0*)ms15_25584))==((void*)(a3))){
  1409. r292c_mapping_standard_twin(a1,(/*RF2*/(((T333*)a1))->_current_type/*8*/));
  1410. }
  1411.  else if((((T0*)ms15_1800))==((void*)(a3))){
  1412. _ct=(/*RF2*/(((T333*)a1))->_current_type/*8*/);
  1413. _rc=X52run_class(_ct);
  1414. _rf=r50get_copy(((T50*)_rc));
  1415. _rf7=_rf;
  1416. if(NULL!=(_rf7)){
  1417. switch(((T0*)_rf7)->id){
  1418. case 337:
  1419. break;
  1420. default:
  1421. _rf7=NULL;
  1422. }
  1423. }/*[IF*/
  1424. if((_rf7)!=((void*)(NULL))){
  1425. r292c_mapping_standard_twin(a1,_ct);
  1426. }
  1427. else{
  1428. r333default_mapping_function(((T333*)a1));
  1429. }
  1430. /*FI]*/
  1431. }
  1432.  else if((((T0*)ms15_13491))==((void*)(a3))){
  1433. _ct=(/*RF2*/(((T333*)a1))->_current_type/*8*/);
  1434. /*[IF*/
  1435. if(X52is_basic_eiffel_expanded(_ct)){
  1436. r325put_target_as_target((T325*)(oBC13cpp));
  1437. }
  1438.  else if(X52is_user_expanded(_ct)){
  1439. r333default_mapping_function(((T333*)a1));
  1440. }
  1441. else{
  1442. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_85731));
  1443. /*]*/
  1444. r333default_mapping_function(((T333*)a1));
  1445. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_164));
  1446. /*]*/
  1447. }
  1448. /*FI]*/
  1449. }
  1450.  else if((((T0*)ms15_24960))==((void*)(a3))){
  1451. _ct=(/*RF2*/(((T333*)a1))->_current_type/*8*/);
  1452. r333default_mapping_function(((T333*)a1));
  1453. }
  1454.  else if((((T0*)ms15_60104))==((void*)(a3))){
  1455. _cbd=r325cannot_drop_all((T325*)(oBC13cpp));
  1456. /*[IF*/
  1457. if(_cbd){
  1458. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1459. T3 b1=((T3)'\54');
  1460. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1461. }/*]*/
  1462. /*]*/
  1463. }
  1464. /*FI]*/
  1465. /*[IF*/
  1466. if(X52is_basic_eiffel_expanded((/*RF2*/(((T333*)a1))->_current_type/*8*/))){
  1467. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1468. T3 b1=((T3)'1');
  1469. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1470. }/*]*/
  1471. /*]*/
  1472. }
  1473. else{
  1474. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1475. T3 b1=((T3)'0');
  1476. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1477. }/*]*/
  1478. /*]*/
  1479. }
  1480. /*FI]*/
  1481. /*[IF*/
  1482. if(_cbd){
  1483. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1484. T3 b1=((T3)'\51');
  1485. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1486. }/*]*/
  1487. /*]*/
  1488. }
  1489. /*FI]*/
  1490. }
  1491.  else if((((T0*)ms15_34432))==((void*)(a3))){
  1492. _cbd=r325cannot_drop_all((T325*)(oBC13cpp));
  1493. /*[IF*/
  1494. if(_cbd){
  1495. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1496. T3 b1=((T3)'\54');
  1497. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1498. }/*]*/
  1499. /*]*/
  1500. }
  1501. /*FI]*/
  1502. /*[IF*/
  1503. if(X52is_expanded((/*RF2*/(((T333*)a1))->_current_type/*8*/))){
  1504. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1505. T3 b1=((T3)'1');
  1506. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1507. }/*]*/
  1508. /*]*/
  1509. }
  1510. else{
  1511. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1512. T3 b1=((T3)'0');
  1513. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1514. }/*]*/
  1515. /*]*/
  1516. }
  1517. /*FI]*/
  1518. /*[IF*/
  1519. if(_cbd){
  1520. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1521. T3 b1=((T3)'\51');
  1522. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1523. }/*]*/
  1524. /*]*/
  1525. }
  1526. /*FI]*/
  1527. }
  1528.  else if((((T0*)ms15_8505))==((void*)(a3))){
  1529. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms15_8505));
  1530. /*]*/
  1531. }
  1532.  else if((((T0*)ms15_9436))==((void*)(a3))){
  1533. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_106656));
  1534. /*]*/
  1535. }
  1536.  else if((((T0*)ms15_14193))==((void*)(a3))){
  1537. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_304794));
  1538. /*]*/
  1539. }
  1540. /*FI]*/
  1541. }
  1542.  else if((((T0*)ms15_17448))==((void*)(a2))){
  1543. r292c_mapping_native_array_function(a1,a3);
  1544. }
  1545.  else if((((T0*)ms15_6643))==((void*)(a2))){
  1546. r292c_mapping_integer_function(a1,a3);
  1547. }
  1548.  else if((((T0*)ms15_1168))==((void*)(a2))){
  1549. r292c_mapping_real_function(a1,a3);
  1550. }
  1551.  else if((((T0*)ms15_4728))==((void*)(a2))){
  1552. r292c_mapping_double_function(a1,a3);
  1553. }
  1554.  else if((((T0*)ms15_6405))==((void*)(a2))){
  1555. /*[IF*/
  1556. if((((T0*)ms15_9408))==((void*)(a3))){
  1557. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_339));
  1558. /*]*/
  1559. r325put_target_as_value((T325*)(oBC13cpp));
  1560. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_1850));
  1561. /*]*/
  1562. r325put_arguments((T325*)(oBC13cpp));
  1563. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1564. T3 b1=((T3)'\51');
  1565. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1566. }/*]*/
  1567. /*]*/
  1568. }
  1569. else{
  1570. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1571. T3 b1=((T3)'\50');
  1572. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1573. }/*]*/
  1574. /*]*/
  1575. r325put_target_as_value((T325*)(oBC13cpp));
  1576. /*[IF*/
  1577. if((((T0*)ms15_8211))==((void*)(a3))){
  1578. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_1316));
  1579. /*]*/
  1580. }
  1581. else{
  1582. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_628));
  1583. /*]*/
  1584. }
  1585. /*FI]*/
  1586. r325put_arguments((T325*)(oBC13cpp));
  1587. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1588. T3 b1=((T3)'\51');
  1589. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1590. }/*]*/
  1591. /*]*/
  1592. }
  1593. /*FI]*/
  1594. }
  1595.  else if((((T0*)ms15_9801))==((void*)(a2))){
  1596. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_270));
  1597. /*]*/
  1598. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),a3);
  1599. /*]*/
  1600. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1601. T3 b1=((T3)'\50');
  1602. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1603. }/*]*/
  1604. /*]*/
  1605. r325put_target_as_value((T325*)(oBC13cpp));
  1606. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1607. T3 b1=((T3)'\51');
  1608. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1609. }/*]*/
  1610. /*]*/
  1611. }
  1612.  else if((((T0*)ms15_6776))==((void*)(a2))){
  1613. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_5474));
  1614. /*]*/
  1615. r325put_target_as_value((T325*)(oBC13cpp));
  1616. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1617. T3 b1=((T3)'\51');
  1618. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1619. }/*]*/
  1620. /*]*/
  1621. }
  1622.  else if((((T0*)ms15_7928))==((void*)(a2))){
  1623. _cbd=r325target_cannot_be_dropped((T325*)(oBC13cpp));
  1624. /*[IF*/
  1625. if(_cbd){
  1626. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1627. T3 b1=((T3)'\54');
  1628. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1629. }/*]*/
  1630. /*]*/
  1631. }
  1632. /*FI]*/
  1633. r7copy((T7*)(oBC292tmp_string),((T0*)ms292_1228));
  1634. r7append((T7*)(oBC292tmp_string),a3);
  1635. r7to_upper((T7*)(oBC292tmp_string));
  1636. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),oBC292tmp_string);
  1637. /*]*/
  1638. /*[IF*/
  1639. if(_cbd){
  1640. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1641. T3 b1=((T3)'\51');
  1642. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1643. }/*]*/
  1644. /*]*/
  1645. }
  1646. /*FI]*/
  1647. }
  1648.  else if((((T0*)ms15_10528))==((void*)(a3))){
  1649. _cbd=r325cannot_drop_all((T325*)(oBC13cpp));
  1650. /*[IF*/
  1651. if(_cbd){
  1652. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1653. T3 b1=((T3)'\54');
  1654. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1655. }/*]*/
  1656. /*]*/
  1657. }
  1658. /*FI]*/
  1659. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_1495));
  1660. /*]*/
  1661. /*[IF*/
  1662. if(_cbd){
  1663. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1664. T3 b1=((T3)'\51');
  1665. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1666. }/*]*/
  1667. /*]*/
  1668. }
  1669. /*FI]*/
  1670. }
  1671.  else if((((T0*)ms15_1664))==((void*)(a3))){
  1672. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_12688));
  1673. /*]*/
  1674. r325put_ith_argument((T325*)(oBC13cpp),1);
  1675. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_164));
  1676. /*]*/
  1677. }
  1678.  else if((((T0*)ms15_11336))==((void*)(a3))){
  1679. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_13897));
  1680. /*]*/
  1681. r325put_ith_argument((T325*)(oBC13cpp),1);
  1682. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_1335));
  1683. /*]*/
  1684. }
  1685.  else if((((T0*)ms15_11376))==((void*)(a3))){
  1686. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_13897a));
  1687. /*]*/
  1688. r325put_ith_argument((T325*)(oBC13cpp),1);
  1689. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_1360));
  1690. /*]*/
  1691. }
  1692.  else if((((T0*)ms15_34528))==((void*)(a3))){
  1693. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_32407));
  1694. /*]*/
  1695. }
  1696.  else if((((T0*)ms15_1980))==((void*)(a2))){
  1697. r292c_mapping_bit_function(a1,a3);
  1698. }
  1699.  else if((((T0*)ms15_21192))==((void*)(a3))){
  1700. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_6996));
  1701. /*]*/
  1702. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1703. T3 b1=((T3)'\50');
  1704. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1705. }/*]*/
  1706. /*]*/
  1707. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_522));
  1708. /*]*/
  1709. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1710. T3 b1=((T3)'\51');
  1711. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1712. }/*]*/
  1713. /*]*/
  1714. }
  1715.  else if((((T0*)ms15_12744))==((void*)(a3))){
  1716. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_12727));
  1717. /*]*/
  1718. r325put_ith_argument((T325*)(oBC13cpp),1);
  1719. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_164));
  1720. /*]*/
  1721. }
  1722.  else if((((T0*)ms15_13707))==((void*)(a3))){
  1723. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_84900));
  1724. /*]*/
  1725. }
  1726.  else if((((T0*)ms15_26156))==((void*)(a3))){
  1727. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_72496));
  1728. /*]*/
  1729. }
  1730.  else if(r7has_prefix(((T7*)a3),((T0*)ms14_6504))){
  1731. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),a3);
  1732. /*]*/
  1733. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1734. T3 b1=((T3)'\50');
  1735. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1736. }/*]*/
  1737. /*]*/
  1738. /*[IF*/
  1739. if(((/*RF2*/(((T333*)a1))->_arguments/*32*/))!=((void*)(NULL))){
  1740. r325put_arguments((T325*)(oBC13cpp));
  1741. }
  1742. /*FI]*/
  1743. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1744. T3 b1=((T3)'\51');
  1745. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1746. }/*]*/
  1747. /*]*/
  1748. }
  1749. /*FI]*/
  1750. }
  1751.  
  1752.  
  1753. T0* r292system_tools(void){
  1754. if(fBC13system_tools==0){fBC13system_tools=1;{
  1755. {T43*n=((T43*)malloc(sizeof(*n))/*17*/);
  1756. *n=M43;
  1757. oBC13system_tools=((T0*)n);
  1758. r43make(n);
  1759. }
  1760. }}
  1761. return oBC13system_tools;
  1762. }
  1763.  
  1764.  
  1765. T6 r292stupid_switch_procedure(T0* a1,T0* a2){
  1766. T6 R=0;
  1767. /*[IF*/
  1768. if((((T0*)ms15_15650))==((void*)(a2))){
  1769. R=1;
  1770. }
  1771. /*FI]*/
  1772. return R;
  1773. }
  1774.  
  1775.  
  1776. T6 r292stupid_switch_function(T0* a1,T0* a2){
  1777. T6 R=0;
  1778. /*[IF*/
  1779. if((((((((T0*)ms15_29246))==((void*)(a2)))||((((T0*)ms15_30660))==((void*)(a2))))||((((T0*)ms15_13995))==((void*)(a2))))||((((T0*)ms15_16850))==((void*)(a2))))||((((T0*)ms15_7530))==((void*)(a2)))){
  1780. R=1;
  1781. }
  1782. /*FI]*/
  1783. return R;
  1784. }
  1785. T0*oBC292tmp_string=NULL;
  1786.  
  1787.  
  1788. void r292c_define_standard_twin(T0* a1,T0* a2){
  1789. /*[IF*/
  1790. if(X52is_basic_eiffel_expanded(a2)){
  1791. }
  1792.  else if(X52is_expanded(a2)){
  1793. /*[IF*/
  1794. if(X52is_dummy_expanded(a2)){
  1795. }
  1796.  else if(X52is_native_array(a2)){
  1797. }
  1798. else{
  1799. r333c_define_with_body(((T333*)a1),((T0*)ms292_43401));
  1800. }
  1801. /*FI]*/
  1802. }
  1803. else{
  1804. /*[IF*/
  1805. if((/*RF2*/((T344*)(oBC13gc_handler))->_is_off/*0*/)){
  1806. r7copy((T7*)(oBC288body),((T0*)ms292_14894));
  1807. }
  1808. else{
  1809. r7copy((T7*)(oBC288body),((T0*)ms292_549));
  1810. r7append((T7*)(oBC288body),((T0*)ms14_5327));
  1811. X52gc_call_new_in(a2,oBC288body);
  1812. r7append((T7*)(oBC288body),((T0*)ms14_330));
  1813. }
  1814. /*FI]*/
  1815. r7append((T7*)(oBC288body),((T0*)ms292_824a));
  1816. r2append_in(X52id(a2),oBC288body);
  1817. r7append((T7*)(oBC288body),((T0*)ms292_3213));
  1818. r333c_define_with_body(((T333*)a1),oBC288body);
  1819. }
  1820. /*FI]*/
  1821. }
  1822.  
  1823.  
  1824. void r292c_define_twin(T0* a1,T0* a2,T0* a3,T0* a4){
  1825. T2 _id=0;
  1826. r333c_opening(((T333*)a1));
  1827. /*[IF*/
  1828. if(X52is_reference(a2)){
  1829. /*[IF*/
  1830. if((/*RF2*/((T344*)(oBC13gc_handler))->_is_off/*0*/)){
  1831. _id=(/*RF2*/(((T50*)a3))->_id/*4*/);
  1832. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_14894a));
  1833. /*]*/
  1834. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_824aa));
  1835. /*]*/
  1836. /*[IRF3.5put_integer*/r48put_integer(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),_id);
  1837. /*]*/
  1838. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_4374));
  1839. /*]*/
  1840. /*[IRF3.5put_integer*/r48put_integer(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),_id);
  1841. /*]*/
  1842. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_138));
  1843. /*]*/
  1844. }
  1845. else{
  1846. r7copy((T7*)(oBC288body),((T0*)ms292_7510));
  1847. X52gc_call_new_in(a2,oBC288body);
  1848. r7append((T7*)(oBC288body),((T0*)ms14_330));
  1849. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),oBC288body);
  1850. /*]*/
  1851. }
  1852. /*FI]*/
  1853. }
  1854. /*FI]*/
  1855. r325inside_twin((T325*)(oBC13cpp),a4);
  1856. r333c_closing(((T333*)a1));
  1857. }
  1858.  
  1859.  
  1860. void r292fe_long_bit(T0* a1){
  1861. {T68 se_tmp0;
  1862. r66add_position((*(se_tmp0=X334start_position(a1),&se_tmp0)));
  1863. }
  1864. /*[IRF3.6append*/{T0* b1=((T0*)ms292_92690);
  1865. r7append((T7*)(oBC66explanation),b1);
  1866. }/*]*/
  1867. r66add_type(/*SSWARF2*//*X334current_type*/(/*RF2*/(((T368*)a1))->_current_type/*8*/),((T0*)ms292_452295));
  1868. r66print_as_fatal_error((T66*)(oBC13eh));
  1869. }
  1870.  
  1871.  
  1872. void r292mapping_small_bit_put01(T0* a1,T3 a2,T3 a3,T2 a4){
  1873. r325put_target_as_value((T325*)(oBC13cpp));
  1874. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1875. T3 b1=a2;
  1876. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1877. }/*]*/
  1878. /*]*/
  1879. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_202a));
  1880. /*]*/
  1881. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1882. T3 b1=a3;
  1883. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1884. }/*]*/
  1885. /*]*/
  1886. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_8772));
  1887. /*]*/
  1888. /*[IF*/
  1889. if(X276is_c_char(a1)){
  1890. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_1656));
  1891. /*]*/
  1892. }
  1893. else{
  1894. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_993));
  1895. /*]*/
  1896. }
  1897. /*FI]*/
  1898. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_2946));
  1899. /*]*/
  1900. /*[IRF3.5put_integer*/r48put_integer(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),X276nb(a1));
  1901. /*]*/
  1902. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_170));
  1903. /*]*/
  1904. r325put_ith_argument((T325*)(oBC13cpp),a4);
  1905. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_1698));
  1906. /*]*/
  1907. }
  1908.  
  1909.  
  1910. T6 r292use_current(T0* a1){
  1911. T6 R=0;
  1912. T0* _n=NULL;
  1913. _n=X82to_string(/*SSFRF4*//*X289first_name*//*(IRF4.6first_name*/(/*RF2*/(((T83*)((/*RF2*/(((T291*)a1))->_names/*8*/))))->_first/*0*/)/*)*/);
  1914. /*[IF*/
  1915. if((((T0*)ms15_8505))==((void*)(_n))){
  1916. }
  1917.  else if((((T0*)ms15_12744))==((void*)(_n))){
  1918. }
  1919.  else if((((T0*)ms15_9436))==((void*)(_n))){
  1920. }
  1921.  else if((((T0*)ms15_12915))==((void*)(_n))){
  1922. }
  1923.  else if((((T0*)ms15_13752))==((void*)(_n))){
  1924. }
  1925.  else if((((T0*)ms15_15650))==((void*)(_n))){
  1926. }
  1927. else{
  1928. R=1;
  1929. }
  1930. /*FI]*/
  1931. return R;
  1932. }
  1933.  
  1934.  
  1935. void r292c_mapping_bit_procedure(T0* a1,T0* a2){
  1936. T0* _type_bit=NULL;
  1937. _type_bit=(/*RF2*/(((T337*)a1))->_current_type/*8*/);
  1938. if(NULL!=(_type_bit)){
  1939. switch(((T0*)_type_bit)->id){
  1940. case 275:case 277:
  1941. break;
  1942. default:
  1943. _type_bit=NULL;
  1944. }
  1945. }/*[IF*/
  1946. if((a2)==((void*)(((T0*)ms15_2440)))){
  1947. /*[IF*/
  1948. if(X276is_c_unsigned_ptr(_type_bit)){
  1949. r337default_mapping_procedure(((T337*)a1));
  1950. }
  1951. else{
  1952. /*[IRF3.6mapping_small_bit_put_0*/{T0* b1=_type_bit;
  1953. T2 b2=1;
  1954. r292mapping_small_bit_put01(b1,((T3)'\46'),((T3)'\176'),b2);
  1955. }/*]*/
  1956. }
  1957. /*FI]*/
  1958. }
  1959.  else if((a2)==((void*)(((T0*)ms15_2445)))){
  1960. /*[IF*/
  1961. if(X276is_c_unsigned_ptr(_type_bit)){
  1962. r337default_mapping_procedure(((T337*)a1));
  1963. }
  1964. else{
  1965. /*[IRF3.6mapping_small_bit_put_1*/{T0* b1=_type_bit;
  1966. T2 b2=1;
  1967. r292mapping_small_bit_put01(b1,((T3)'\174'),((T3)'\40'),b2);
  1968. }/*]*/
  1969. }
  1970. /*FI]*/
  1971. }
  1972. else{
  1973. /*[IF*/
  1974. if(X276is_c_unsigned_ptr(_type_bit)){
  1975. r337default_mapping_procedure(((T337*)a1));
  1976. }
  1977. else{
  1978. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_741));
  1979. /*]*/
  1980. r325put_ith_argument((T325*)(oBC13cpp),1);
  1981. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_522));
  1982. /*]*/
  1983. /*[IRF3.6mapping_small_bit_put_1*/{T0* b1=_type_bit;
  1984. T2 b2=2;
  1985. r292mapping_small_bit_put01(b1,((T3)'\174'),((T3)'\40'),b2);
  1986. }/*]*/
  1987. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_5139));
  1988. /*]*/
  1989. /*[IRF3.6mapping_small_bit_put_0*/{T0* b1=_type_bit;
  1990. T2 b2=2;
  1991. r292mapping_small_bit_put01(b1,((T3)'\46'),((T3)'\176'),b2);
  1992. }/*]*/
  1993. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_270a));
  1994. /*]*/
  1995. }
  1996. /*FI]*/
  1997. }
  1998. /*FI]*/
  1999. }
  2000.  
  2001.  
  2002. void r292c_mapping_bit_function(T0* a1,T0* a2){
  2003. T6 _boost=0;
  2004. T0* _type_bit=NULL;
  2005. _type_bit=(/*RF2*/(((T333*)a1))->_current_type/*8*/);
  2006. if(NULL!=(_type_bit)){
  2007. switch(((T0*)_type_bit)->id){
  2008. case 275:case 277:
  2009. break;
  2010. default:
  2011. _type_bit=NULL;
  2012. }
  2013. }_boost=r47boost((T47*)(oBC13run_control));
  2014. /*[IF*/
  2015. if((((T0*)ms15_2765a))==((void*)(a2))){
  2016. /*[IRF3.5put_integer*/r48put_integer(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),X276nb(_type_bit));
  2017. /*]*/
  2018. }
  2019.  else if((((T0*)ms15_1724))==((void*)(a2))){
  2020. /*[IF*/
  2021. if(X276is_c_unsigned_ptr(_type_bit)){
  2022. r333default_mapping_function(((T333*)a1));
  2023. }
  2024.  else if(_boost){
  2025. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_17459));
  2026. /*]*/
  2027. r325put_target_as_target((T325*)(oBC13cpp));
  2028. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_820));
  2029. /*]*/
  2030. /*[IRF3.5put_integer*/r48put_integer(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),X276nb(_type_bit));
  2031. /*]*/
  2032. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_170a));
  2033. /*]*/
  2034. r325put_arguments((T325*)(oBC13cpp));
  2035. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_2736));
  2036. /*]*/
  2037. }
  2038. else{
  2039. r333default_mapping_function(((T333*)a1));
  2040. }
  2041. /*FI]*/
  2042. }
  2043.  else if((((T0*)ms15_564))==((void*)(a2))){
  2044. /*[IF*/
  2045. if(X276is_c_unsigned_ptr(_type_bit)){
  2046. r292fe_long_bit(a1);
  2047. }
  2048.  else if(_boost){
  2049. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_160a));
  2050. /*]*/
  2051. r325put_target_as_target((T325*)(oBC13cpp));
  2052. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_820a));
  2053. /*]*/
  2054. r325put_ith_argument((T325*)(oBC13cpp),1);
  2055. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_164));
  2056. /*]*/
  2057. }
  2058. else{
  2059. r333default_mapping_function(((T333*)a1));
  2060. }
  2061. /*FI]*/
  2062. }
  2063.  else if((((T0*)ms15_552))==((void*)(a2))){
  2064. /*[IF*/
  2065. if(X276is_c_unsigned_ptr(_type_bit)){
  2066. r292fe_long_bit(a1);
  2067. }
  2068.  else if(_boost){
  2069. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_160a));
  2070. /*]*/
  2071. r325put_target_as_target((T325*)(oBC13cpp));
  2072. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_804));
  2073. /*]*/
  2074. r325put_ith_argument((T325*)(oBC13cpp),1);
  2075. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_164));
  2076. /*]*/
  2077. }
  2078. else{
  2079. r333default_mapping_function(((T333*)a1));
  2080. }
  2081. /*FI]*/
  2082. }
  2083.  else if((((T0*)ms15_1035a))==((void*)(a2))){
  2084. /*[IF*/
  2085. if(X276is_c_unsigned_ptr(_type_bit)){
  2086. r292fe_long_bit(a1);
  2087. }
  2088. else{
  2089. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2090. T3 b1=((T3)'\50');
  2091. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2092. }/*]*/
  2093. /*]*/
  2094. r325put_target_as_target((T325*)(oBC13cpp));
  2095. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2096. T3 b1=((T3)'\51');
  2097. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2098. }/*]*/
  2099. /*]*/
  2100. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2101. T3 b1=((T3)'\136');
  2102. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2103. }/*]*/
  2104. /*]*/
  2105. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2106. T3 b1=((T3)'\50');
  2107. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2108. }/*]*/
  2109. /*]*/
  2110. r325put_ith_argument((T325*)(oBC13cpp),1);
  2111. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2112. T3 b1=((T3)'\51');
  2113. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2114. }/*]*/
  2115. /*]*/
  2116. }
  2117. /*FI]*/
  2118. }
  2119.  else if((((T0*)ms15_450))==((void*)(a2))){
  2120. /*[IF*/
  2121. if(X276is_c_unsigned_ptr(_type_bit)){
  2122. r292fe_long_bit(a1);
  2123. }
  2124. else{
  2125. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2126. T3 b1=((T3)'\50');
  2127. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2128. }/*]*/
  2129. /*]*/
  2130. r325put_target_as_target((T325*)(oBC13cpp));
  2131. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2132. T3 b1=((T3)'\51');
  2133. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2134. }/*]*/
  2135. /*]*/
  2136. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2137. T3 b1=((T3)'\174');
  2138. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2139. }/*]*/
  2140. /*]*/
  2141. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2142. T3 b1=((T3)'\50');
  2143. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2144. }/*]*/
  2145. /*]*/
  2146. r325put_ith_argument((T325*)(oBC13cpp),1);
  2147. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2148. T3 b1=((T3)'\51');
  2149. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2150. }/*]*/
  2151. /*]*/
  2152. }
  2153. /*FI]*/
  2154. }
  2155.  else if((((T0*)ms15_1011))==((void*)(a2))){
  2156. /*[IF*/
  2157. if(X276is_c_unsigned_ptr(_type_bit)){
  2158. r292fe_long_bit(a1);
  2159. }
  2160. else{
  2161. X276mapping_cast(_type_bit);
  2162. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2163. T3 b1=((T3)'\176');
  2164. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2165. }/*]*/
  2166. /*]*/
  2167. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2168. T3 b1=((T3)'\50');
  2169. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2170. }/*]*/
  2171. /*]*/
  2172. r325put_target_as_target((T325*)(oBC13cpp));
  2173. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2174. T3 b1=((T3)'\51');
  2175. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2176. }/*]*/
  2177. /*]*/
  2178. }
  2179. /*FI]*/
  2180. }
  2181.  else if((((T0*)ms15_921))==((void*)(a2))){
  2182. /*[IF*/
  2183. if(X276is_c_unsigned_ptr(_type_bit)){
  2184. r292fe_long_bit(a1);
  2185. }
  2186. else{
  2187. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2188. T3 b1=((T3)'\50');
  2189. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2190. }/*]*/
  2191. /*]*/
  2192. r325put_target_as_target((T325*)(oBC13cpp));
  2193. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2194. T3 b1=((T3)'\51');
  2195. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2196. }/*]*/
  2197. /*]*/
  2198. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2199. T3 b1=((T3)'\46');
  2200. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2201. }/*]*/
  2202. /*]*/
  2203. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2204. T3 b1=((T3)'\50');
  2205. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2206. }/*]*/
  2207. /*]*/
  2208. r325put_ith_argument((T325*)(oBC13cpp),1);
  2209. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2210. T3 b1=((T3)'\51');
  2211. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2212. }/*]*/
  2213. /*]*/
  2214. }
  2215. /*FI]*/
  2216. }
  2217.  else if((((T0*)ms15_1744))==((void*)(a2))){
  2218. /*[IF*/
  2219. if(X276is_c_unsigned_ptr(_type_bit)){
  2220. r333default_mapping_function(((T333*)a1));
  2221. }
  2222.  else if(_boost){
  2223. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_17459a));
  2224. /*]*/
  2225. r325put_target_as_target((T325*)(oBC13cpp));
  2226. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms292_1050));
  2227. /*]*/
  2228. }
  2229. else{
  2230. r333default_mapping_function(((T333*)a1));
  2231. }
  2232. /*FI]*/
  2233. }
  2234.  else if((((T0*)ms15_22716))==((void*)(a2))){
  2235. r325put_target_as_value((T325*)(oBC13cpp));
  2236. }
  2237.  else if((((T0*)ms15_16770))==((void*)(a2))){
  2238. r325put_target_as_value((T325*)(oBC13cpp));
  2239. }
  2240. /*FI]*/
  2241. }
  2242.  
  2243.  
  2244. void r77check_expanded_with(T77* C,T0* a1){
  2245. /*[IF*/
  2246. if(((/*RF2*/((T79*)((/*RF2*/(C)->_list/*0*/)))->_upper/*8*/))>(1)){
  2247. r66add_type(a1,((T0*)ms14_23520));
  2248. r66add_position((/*RF2*/((T78*)(r79item((T79*)((/*RF2*/(C)->_list/*0*/)),1)))->_start_position/*0*/));
  2249. r66add_position((/*RF2*/((T78*)(r79item((T79*)((/*RF2*/(C)->_list/*0*/)),2)))->_start_position/*0*/));
  2250. /*[IRF3.2fatal_error_vtec_2*/r77fatal_error(((T0*)ms13_570704));
  2251. /*]*/
  2252. }
  2253. /*FI]*/
  2254. r78check_expanded_with((T78*)(r79item((T79*)((/*RF2*/(C)->_list/*0*/)),1)),a1);
  2255. }
  2256.  
  2257.  
  2258. T0* r77root_procedure_name(T77* C,T0* a1){
  2259. T0* R=NULL;
  2260. T2 _i=0;
  2261. _i=(/*RF2*/((T79*)((/*RF2*/(C)->_list/*0*/)))->_upper/*8*/);
  2262. while (!(((_i)==(0))||((R)!=((void*)(NULL)))))
  2263. {
  2264. R=r78root_procedure_name((T78*)(r79item((T79*)((/*RF2*/(C)->_list/*0*/)),_i)),a1);
  2265. _i=(_i)-(1);
  2266. }
  2267. return R;
  2268. }
  2269.  
  2270.  
  2271. void r77make(T77* C,T0* a1){
  2272. {T79*n=((T79*)malloc(sizeof(*n))/*16*/);
  2273. *n=M79;
  2274. r79with_capacity(n,4,1);
  2275. (/*SFN*/C->_list)=((T0*)n);
  2276. }
  2277. r79add_last((T79*)((/*RF2*/(C)->_list/*0*/)),a1);
  2278. }
  2279.  
  2280.  
  2281. void r77fatal_error(T0* a1){
  2282. /*[IRF3.6append*/{T0* b1=a1;
  2283. r7append((T7*)(oBC66explanation),b1);
  2284. }/*]*/
  2285. r66print_as_fatal_error((T66*)(oBC13eh));
  2286. }
  2287.  
  2288.  
  2289. T0* r77expanded_initializer(T77* C,T0* a1){
  2290. T0* R=NULL;
  2291. R=r78expanded_initializer((T78*)(r79item((T79*)((/*RF2*/(C)->_list/*0*/)),1)),a1);
  2292. return R;
  2293. }
  2294.  
  2295.  
  2296. T0* r77get_clause(T77* C,T0* a1){
  2297. T0* R=NULL;
  2298. T2 _i=0;
  2299. _i=1;
  2300. while (!(((_i)>((/*RF2*/((T79*)((/*RF2*/(C)->_list/*0*/)))->_upper/*8*/)))||(r78has((T78*)(r79item((T79*)((/*RF2*/(C)->_list/*0*/)),_i)),a1))))
  2301. {
  2302. _i=(_i)+(1);
  2303. }
  2304. /*[IF*/
  2305. if((_i)<=((/*RF2*/((T79*)((/*RF2*/(C)->_list/*0*/)))->_upper/*8*/))){
  2306. R=r79item((T79*)((/*RF2*/(C)->_list/*0*/)),_i);
  2307. }
  2308. /*FI]*/
  2309. return R;
  2310. }
  2311.  
  2312.  
  2313. T68 r77start_position(T77* C){
  2314. T68 R={NULL,0};
  2315. R=(/*RF2*/((T78*)(/*(IRF4.6first*/((/*RF2*/((T79*)((/*RF2*/(C)->_list/*0*/)))->_storage/*0*/))[0]/*)*/))->_start_position/*0*/);
  2316. return R;
  2317. }
  2318.  
  2319.  
  2320. void r46put_string(T46* C,T0* a1){
  2321. T2 _i=0;
  2322. _i=1;
  2323. while (!((_i)>((/*RF2*/(((T7*)a1))->_count/*4*/))))
  2324. {
  2325. /*[IRF3.6put_character*/{T46* C1=C;
  2326. T3 b1=/*(IRF4.6item*/((/*RF2*/(((T7*)a1))->_storage/*0*/))[(_i)-(1)]/*)*/;
  2327. putc(b1,((FILE*)(stderr)));
  2328. }/*]*/
  2329. _i=(_i)+(1);
  2330. }
  2331. }
  2332.  
  2333.  
  2334. void r46put_integer(T46* C,T2 a1){
  2335. /*[IRF3.3clear*/((((T7*)((T7*)(oBC37tmp_string))))->_count)=(0);
  2336. /*]*/
  2337. r2append_in(a1,oBC37tmp_string);
  2338. r46put_string(C,oBC37tmp_string);
  2339. }
  2340.  
  2341.  
  2342. void r109compile_to_c_old(T109* C){
  2343. T2 _i=0;
  2344. /*[IF*/
  2345. if(((/*RF2*/(C)->_list/*12*/))!=((void*)(NULL))){
  2346. _i=/*SSWARF2*//*X108upper*/(/*RF2*/((T108*)((/*RF2*/(C)->_list/*12*/)))->_upper/*12*/);
  2347. while (!((_i)==(0)))
  2348. {
  2349. X104compile_to_c_old(X108item((/*RF2*/(C)->_list/*12*/),_i));
  2350. _i=(_i)-(1);
  2351. }
  2352. }
  2353. /*FI]*/
  2354. }
  2355.  
  2356.  
  2357. T0* r109type_any(void){
  2358. if(fBC13type_any==0){fBC13type_any=1;{
  2359. T68 _unknown_position={NULL,0};
  2360. {T259*n=((T259*)malloc(sizeof(*n))/*8*/);
  2361. *n=M259;
  2362. oBC13type_any=((T0*)n);
  2363. r259make(n,_unknown_position);
  2364. }
  2365. }}
  2366. return oBC13type_any;
  2367. }
  2368.  
  2369.  
  2370. T0* r109add_comment(T109* C,T0* a1){
  2371. T0* R=NULL;
  2372. /*[IF*/
  2373. if(((a1)==((void*)(NULL)))||((/*(IRF4.6count*/r44count(((T44*)((/*RF2*/(((T81*)a1))->_list/*8*/))))/*)*/)==(0))){
  2374. R=((T0*)(C));
  2375. }
  2376. else{
  2377. {T229*n=((T229*)malloc(sizeof(*n))/*12*/);
  2378. *n=M229;
  2379. r229make(n,(T0*)C,a1);
  2380. R=((T0*)n);
  2381. }
  2382. }
  2383. /*FI]*/
  2384. return R;
  2385. }
  2386.  
  2387.  
  2388. void r109mapping_c_target(T109* C,T0* a1){
  2389. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_492));
  2390. /*]*/
  2391. /*[IRF3.5put_integer*/r48put_integer(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),X52id(a1));
  2392. /*]*/
  2393. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_166));
  2394. /*]*/
  2395. r109compile_to_c(C);
  2396. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2397. T3 b1=((T3)'\51');
  2398. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2399. }/*]*/
  2400. /*]*/
  2401. }
  2402.  
  2403.  
  2404. void r109afd_check(T109* C){
  2405. T2 _i=0;
  2406. /*[IF*/
  2407. if(((/*RF2*/(C)->_list/*12*/))!=((void*)(NULL))){
  2408. _i=/*SSWARF2*//*X108upper*/(/*RF2*/((T108*)((/*RF2*/(C)->_list/*12*/)))->_upper/*12*/);
  2409. while (!((_i)==(0)))
  2410. {
  2411. X104afd_check(X108item((/*RF2*/(C)->_list/*12*/),_i));
  2412. _i=(_i)-(1);
  2413. }
  2414. }
  2415. /*FI]*/
  2416. }
  2417.  
  2418.  
  2419. void r109c_declare_for_old(T109* C){
  2420. T2 _i=0;
  2421. /*[IF*/
  2422. if(((/*RF2*/(C)->_list/*12*/))!=((void*)(NULL))){
  2423. _i=/*SSWARF2*//*X108upper*/(/*RF2*/((T108*)((/*RF2*/(C)->_list/*12*/)))->_upper/*12*/);
  2424. while (!((_i)==(0)))
  2425. {
  2426. X104c_declare_for_old(X108item((/*RF2*/(C)->_list/*12*/),_i));
  2427. _i=(_i)-(1);
  2428. }
  2429. }
  2430. /*FI]*/
  2431. }
  2432.  
  2433.  
  2434. T6 r109use_current(T109* C){
  2435. T6 R=0;
  2436. T2 _i=0;
  2437. /*[IF*/
  2438. if(((/*RF2*/(C)->_list/*12*/))!=((void*)(NULL))){
  2439. _i=/*SSWARF2*//*X108upper*/(/*RF2*/((T108*)((/*RF2*/(C)->_list/*12*/)))->_upper/*12*/);
  2440. while (!(((_i)==(0))||(R)))
  2441. {
  2442. R=X104use_current(X108item((/*RF2*/(C)->_list/*12*/),_i));
  2443. _i=(_i)-(1);
  2444. }
  2445. }
  2446. /*FI]*/
  2447. return R;
  2448. }
  2449.  
  2450.  
  2451. T0* r109to_runnable(T109* C,T0* a1){
  2452. T0* R=NULL;
  2453. T0* _elt=NULL;
  2454. T0* _e=NULL;
  2455. T2 _i=0;
  2456. /*[IF*/
  2457. if(((/*RF2*/(C)->_current_type/*20*/))==((void*)(NULL))){
  2458. (/*SFN*/C->_current_type)=a1;
  2459. /*[IF*/
  2460. if(((/*RF2*/(C)->_list/*12*/))==((void*)(NULL))){
  2461. _elt=r109type_any();
  2462. }
  2463. else{
  2464. _i=/*SSWARF2*//*X108upper*/(/*RF2*/((T108*)((/*RF2*/(C)->_list/*12*/)))->_upper/*12*/);
  2465. while (!((_i)==(0)))
  2466. {
  2467. _e=X104to_runnable(X108item((/*RF2*/(C)->_list/*12*/),_i),a1);
  2468. /*[IF*/
  2469. if((_e)==((void*)(NULL))){
  2470. r66add_position((/*RF2*/(C)->_start_position/*4*/));
  2471. {T68 se_tmp0;
  2472. r109error((*(se_tmp0=X104start_position(X108item((/*RF2*/(C)->_list/*12*/),_i)),&se_tmp0)),((T0*)ms109_63162));
  2473. }
  2474. _i=0;
  2475. }
  2476. else{
  2477. X108put((/*RF2*/(C)->_list/*12*/),_e,_i);
  2478. /*[IF*/
  2479. if((_elt)==((void*)(NULL))){
  2480. _elt=X104result_type(_e);
  2481. }
  2482. else{
  2483. _elt=X52smallest_ancestor(_elt,X104result_type(_e));
  2484. }
  2485. /*FI]*/
  2486. _i=(_i)-(1);
  2487. }
  2488. /*FI]*/
  2489. }
  2490. }
  2491. /*FI]*/
  2492. /*[IF*/
  2493. if((/*(IRF4.9nb_errors*/(/*RF2*/((T66*)(oBC13eh))->_error_counter/*0*/)/*)*/)==(0)){
  2494. _elt=X52run_type(_elt);
  2495. {T260*n=((T260*)malloc(sizeof(*n))/*20*/);
  2496. *n=M260;
  2497. r260make(n,(/*RF2*/(C)->_start_position/*4*/),_elt);
  2498. (/*SFN*/C->_result_type)=((T0*)n);
  2499. }
  2500. r50set_at_run_time((T50*)(r260run_class((T260*)((/*RF2*/(C)->_result_type/*16*/)))));
  2501. r260load_basic_features((T260*)((/*RF2*/(C)->_result_type/*16*/)));
  2502. R=((T0*)(C));
  2503. /*[IF*/
  2504. if(((/*RF2*/(C)->_list/*12*/))!=((void*)(NULL))){
  2505. _i=/*SSWARF2*//*X108upper*/(/*RF2*/((T108*)((/*RF2*/(C)->_list/*12*/)))->_upper/*12*/);
  2506. while (!((_i)==(0)))
  2507. {
  2508. _e=X108item((/*RF2*/(C)->_list/*12*/),_i);
  2509. _e=r341implicit_cast((T341*)(oBC13conversion_handler),_e,_elt);
  2510. X108put((/*RF2*/(C)->_list/*12*/),_e,_i);
  2511. _i=(_i)-(1);
  2512. }
  2513. }
  2514. /*FI]*/
  2515. r361register((/*RF2*/(C)->_result_type/*16*/));
  2516. }
  2517. /*FI]*/
  2518. }
  2519.  else if(((/*RF2*/(C)->_list/*12*/))==((void*)(NULL))){
  2520. R=((T0*)(C));
  2521. }
  2522. else{
  2523. {T109*n=((T109*)malloc(sizeof(*n))/*24*/);
  2524. *n=M109;
  2525. r109make(n,(/*RF2*/(C)->_start_position/*4*/),X108twin((/*RF2*/(C)->_list/*12*/)));
  2526. R=((T0*)n);
  2527. }
  2528. R=r109to_runnable(((T109*)R),a1);
  2529. }
  2530. /*FI]*/
  2531. return R;
  2532. }
  2533.  
  2534.  
  2535. T2 r109to_integer(T109* C){
  2536. T2 R=0;
  2537. r109error((/*RF2*/(C)->_start_position/*4*/),((T0*)ms14_45441));
  2538. return R;
  2539. }
  2540.  
  2541.  
  2542. void r109error(T68 a1,T0* a2){
  2543. r66add_position(a1);
  2544. /*[IRF3.6append*/{T0* b1=a2;
  2545. r7append((T7*)(oBC66explanation),b1);
  2546. }/*]*/
  2547. r66print_as_error((T66*)(oBC13eh));
  2548. }
  2549.  
  2550.  
  2551. T0* r109static_result_base_class(void){
  2552. T0* R=NULL;
  2553. R=r49get_class(((T0*)ms15_1915));
  2554. return R;
  2555. }
  2556.  
  2557.  
  2558. void r109make(T109* C,T68 a1,T0* a2){
  2559. (/*SFN*/C->_start_position)=a1;
  2560. (/*SFN*/C->_list)=a2;
  2561. }
  2562.  
  2563.  
  2564. void r109assertion_check(T109* C,T3 a1){
  2565. T0* _e=NULL;
  2566. T2 _i=0;
  2567. /*[IF*/
  2568. if(((/*RF2*/(C)->_list/*12*/))!=((void*)(NULL))){
  2569. _i=/*SSWARF2*//*X108upper*/(/*RF2*/((T108*)((/*RF2*/(C)->_list/*12*/)))->_upper/*12*/);
  2570. while (!((_i)==(0)))
  2571. {
  2572. _e=X108item((/*RF2*/(C)->_list/*12*/),_i);
  2573. X104assertion_check(_e,a1);
  2574. _i=(_i)-(1);
  2575. }
  2576. }
  2577. /*FI]*/
  2578. }
  2579.  
  2580.  
  2581. void r109compile_to_c(T109* C){
  2582. T0* _e=NULL;
  2583. T6 _adr=0;
  2584. T0* _actual_type=NULL;
  2585. T0* _formal_type=NULL;
  2586. T2 _i=0;
  2587. r361c_call((/*RF2*/(C)->_result_type/*16*/));
  2588. _formal_type=X52run_type(r258item((T258*)((/*RF2*/((T260*)((/*RF2*/(C)->_result_type/*16*/)))->_generic_list/*8*/)),1));
  2589. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2590. T3 b1=((T3)'\50');
  2591. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2592. }/*]*/
  2593. /*]*/
  2594. /*[IF*/
  2595. if(((/*RF2*/(C)->_list/*12*/))==((void*)(NULL))){
  2596. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2597. T3 b1=((T3)'0');
  2598. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2599. }/*]*/
  2600. /*]*/
  2601. }
  2602. else{
  2603. _adr=X52is_user_expanded(_formal_type);
  2604. /*[IRF3.5put_integer*/r48put_integer(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),/*SSWARF2*//*X108upper*/(/*RF2*/((T108*)((/*RF2*/(C)->_list/*12*/)))->_upper/*12*/));
  2605. /*]*/
  2606. _i=1;
  2607. while (!((_i)>(/*SSWARF2*//*X108upper*/(/*RF2*/((T108*)((/*RF2*/(C)->_list/*12*/)))->_upper/*12*/))))
  2608. {
  2609. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_108));
  2610. /*]*/
  2611. /*[IF*/
  2612. if(_adr){
  2613. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2614. T3 b1=((T3)'\46');
  2615. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2616. }/*]*/
  2617. /*]*/
  2618. }
  2619. /*FI]*/
  2620. _e=X108item((/*RF2*/(C)->_list/*12*/),_i);
  2621. _actual_type=X52run_type(X104result_type(_e));
  2622. X104compile_to_c(_e);
  2623. _i=(_i)+(1);
  2624. }
  2625. }
  2626. /*FI]*/
  2627. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2628. T3 b1=((T3)'\51');
  2629. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2630. }/*]*/
  2631. /*]*/
  2632. }
  2633.  
  2634.  
  2635. T6 r109stupid_switch(T109* C,T0* a1){
  2636. T6 R=0;
  2637. T2 _i=0;
  2638. R=1;
  2639. /*[IF*/
  2640. if(((/*RF2*/(C)->_list/*12*/))!=((void*)(NULL))){
  2641. _i=/*SSWARF2*//*X108upper*/(/*RF2*/((T108*)((/*RF2*/(C)->_list/*12*/)))->_upper/*12*/);
  2642. while (!((!(R))||((_i)==(0))))
  2643. {
  2644. R=X104stupid_switch(X108item((/*RF2*/(C)->_list/*12*/),_i),a1);
  2645. _i=(_i)-(1);
  2646. }
  2647. }
  2648. /*FI]*/
  2649. return R;
  2650. }
  2651.  
  2652.  
  2653. T6 r109is_pre_computable(T109* C){
  2654. T6 R=0;
  2655. T0* _e=NULL;
  2656. T2 _i=0;
  2657. /*[IF*/
  2658. if(((/*RF2*/(C)->_list/*12*/))==((void*)(NULL))){
  2659. R=1;
  2660. }
  2661.  else if(X52is_string(r258item((T258*)((/*RF2*/((T260*)((/*RF2*/(C)->_result_type/*16*/)))->_generic_list/*8*/)),1))){
  2662. R=1;
  2663. _i=/*SSWARF2*//*X108upper*/(/*RF2*/((T108*)((/*RF2*/(C)->_list/*12*/)))->_upper/*12*/);
  2664. while (!((!(R))||((_i)==(0))))
  2665. {
  2666. _e=X108item((/*RF2*/(C)->_list/*12*/),_i);
  2667. R=X104is_pre_computable(_e);
  2668. _i=(_i)-(1);
  2669. }
  2670. }
  2671. /*FI]*/
  2672. return R;
  2673. }
  2674.  
  2675.  
  2676. T0* r153runnable_expression(T0* a1,T0* a2){
  2677. T0* R=NULL;
  2678. R=X104to_runnable(a1,a2);
  2679. /*[IF*/
  2680. if((R)==((void*)(NULL))){
  2681. {T68 se_tmp0;
  2682. r66add_position((*(se_tmp0=X104start_position(a1),&se_tmp0)));
  2683. }
  2684. r153fatal_error(((T0*)ms116_16290));
  2685. }
  2686. /*FI]*/
  2687. return R;
  2688. }
  2689.  
  2690.  
  2691. T6 r153call_proc_call_stupid_switch(T153* C,T0* a1){
  2692. T6 R=0;
  2693. /*[IF*/
  2694. {/*AT*/R=1;
  2695. }
  2696. /*FI]*/
  2697. /*[IF*/
  2698. if(R){
  2699. /*[IF*/
  2700. if(X104is_current((/*RF2*/(C)->_target/*4*/))){
  2701. /*[IF*/
  2702. if(r49same_base_feature((/*RF2*/(C)->_run_feature/*12*/),a1)){
  2703. R=(X334stupid_switch((/*RF2*/(C)->_run_feature/*12*/),a1))!=((void*)(NULL));
  2704. }
  2705. else{
  2706. R=0;
  2707. }
  2708. /*FI]*/
  2709. }
  2710. else{
  2711. R=X104stupid_switch((/*RF2*/(C)->_target/*4*/),a1);
  2712. }
  2713. /*FI]*/
  2714. }
  2715. /*FI]*/
  2716. return R;
  2717. }
  2718.  
  2719.  
  2720. T0* r153run_feature_for(T153* C,T0* a1,T0* a2){
  2721. T0* R=NULL;
  2722. T0* _bc=NULL;
  2723. T0* _rt=NULL;
  2724. T0* _rc=NULL;
  2725. _rt=X104result_type(a1);
  2726. /*[IF*/
  2727. if((_rt)!=((void*)(NULL))){
  2728. _rc=X52run_class(_rt);
  2729. /*[IF*/
  2730. if((_rc)!=((void*)(NULL))){
  2731. _bc=r50base_class(((T50*)_rc));
  2732. R=r51run_feature_for(((T51*)_bc),_rc,a1,(/*RF2*/(C)->_feature_name/*8*/),a2);
  2733. }
  2734. /*FI]*/
  2735. }
  2736. /*FI]*/
  2737. /*[IF*/
  2738. if((R)==((void*)(NULL))){
  2739. {T68 se_tmp0;
  2740. r66add_position((*(se_tmp0=X82start_position((/*RF2*/(C)->_feature_name/*8*/)),&se_tmp0)));
  2741. }
  2742. /*[IRF3.6append*/{T0* b1=((T0*)ms116_39025);
  2743. r7append((T7*)(oBC66explanation),b1);
  2744. }/*]*/
  2745. r66print_as_fatal_error((T66*)(oBC13eh));
  2746. }
  2747. /*FI]*/
  2748. return R;
  2749. }
  2750.  
  2751.  
  2752. void r153make(T153* C,T0* a1,T0* a2){
  2753. (/*SFN*/C->_target)=a1;
  2754. (/*SFN*/C->_feature_name)=a2;
  2755. }
  2756.  
  2757.  
  2758. void r153fatal_error(T0* a1){
  2759. /*[IRF3.6append*/{T0* b1=a1;
  2760. r7append((T7*)(oBC66explanation),b1);
  2761. }/*]*/
  2762. r66print_as_fatal_error((T66*)(oBC13eh));
  2763. }
  2764.  
  2765.  
  2766. void r153run_feature_has_no_result(T153* C){
  2767. /*[IF*/
  2768. if((X334result_type((/*RF2*/(C)->_run_feature/*12*/)))!=((void*)(NULL))){
  2769. {T68 se_tmp0;
  2770. r66add_position((*(se_tmp0=X334start_position((/*RF2*/(C)->_run_feature/*12*/)),&se_tmp0)));
  2771. }
  2772. {T68 se_tmp0;
  2773. r66add_position((*(se_tmp0=X82start_position((/*RF2*/(C)->_feature_name/*8*/)),&se_tmp0)));
  2774. }
  2775. r153fatal_error(((T0*)ms152_66627));
  2776. }
  2777. /*FI]*/
  2778. }
  2779.  
  2780.  
  2781. void r153run_feature_match(T153* C){
  2782. r153run_feature_has_no_result(C);
  2783. /*[IF*/
  2784. if((X334arguments((/*RF2*/(C)->_run_feature/*12*/)))!=((void*)(NULL))){
  2785. {T68 se_tmp0;
  2786. r66add_position((*(se_tmp0=X82start_position((/*RF2*/(C)->_feature_name/*8*/)),&se_tmp0)));
  2787. }
  2788. {T68 se_tmp0;
  2789. r66add_position((*(se_tmp0=X334start_position((/*RF2*/(C)->_run_feature/*12*/)),&se_tmp0)));
  2790. }
  2791. r153fatal_error(((T0*)ms153_50092));
  2792. }
  2793. /*FI]*/
  2794. }
  2795.  
  2796.  
  2797. T0* r153add_comment(T153* C,T0* a1){
  2798. T0* R=NULL;
  2799. /*[IF*/
  2800. if(((a1)==((void*)(NULL)))||((/*(IRF4.6count*/r44count(((T44*)((/*RF2*/(((T81*)a1))->_list/*8*/))))/*)*/)==(0))){
  2801. R=((T0*)(C));
  2802. }
  2803. /*AF*/else{
  2804. {T224*n=((T224*)malloc(sizeof(*n))/*12*/);
  2805. *n=M224;
  2806. r224make(n,(T0*)C,a1);
  2807. R=((T0*)n);
  2808. }
  2809. }
  2810. /*FI]*/
  2811. return R;
  2812. }
  2813.  
  2814.  
  2815. void r153compile_to_c(T153* C){
  2816. {T68 se_tmp0;
  2817. r325se_trace_ins((T325*)(oBC13cpp),(*(se_tmp0=r153start_position(C),&se_tmp0)));
  2818. }
  2819. /*[IRF3.6call_proc_call_c2c*/{T153* C1=C;
  2820. r325put_cpc((T325*)(oBC13cpp),(T0*)C1);
  2821. }/*]*/
  2822. }
  2823.  
  2824.  
  2825. void r153afd_check(T153* C){
  2826. T0* _running=NULL;
  2827. T0* _rc=NULL;
  2828. /*[IF*/
  2829. if(((/*RF2*/(C)->_run_feature/*12*/))!=((void*)(NULL))){
  2830. _rc=X52run_class(X104result_type((/*RF2*/(C)->_target/*4*/)));
  2831. _running=(/*RF2*/(((T50*)_rc))->_running/*9*/);
  2832. /*[IF*/
  2833. if((_running)==((void*)(NULL))){
  2834. }
  2835.  else if((r53count(((T53*)_running)))>(1)){
  2836. r351update((/*RF2*/(C)->_target/*4*/),(/*RF2*/(C)->_run_feature/*12*/));
  2837. }
  2838. /*FI]*/
  2839. }
  2840. /*FI]*/
  2841. X104afd_check((/*RF2*/(C)->_target/*4*/));
  2842. /*[IF*/
  2843. /*AF*//*AE*/
  2844. /*FI]*/
  2845. }
  2846.  
  2847.  
  2848. void r153collect_c_tmp(T153* C){
  2849. /*[IF*/
  2850. if(((/*RF2*/(C)->_run_feature/*12*/))!=((void*)(NULL))){
  2851. X334collect_c_tmp((/*RF2*/(C)->_run_feature/*12*/));
  2852. }
  2853. /*FI]*/
  2854. X104collect_c_tmp((/*RF2*/(C)->_target/*4*/));
  2855. /*[IF*/
  2856. /*AF*//*AE*/
  2857. /*FI]*/
  2858. }
  2859.  
  2860.  
  2861. T6 r153use_current(T153* C){
  2862. T6 R=0;
  2863. /*[IF*/
  2864. /*AF*//*AE*/
  2865. /*FI]*/
  2866. /*[IF*/
  2867. if(R){
  2868. }
  2869.  else if(X104is_current((/*RF2*/(C)->_target/*4*/))){
  2870. R=X334use_current((/*RF2*/(C)->_run_feature/*12*/));
  2871. }
  2872. else{
  2873. R=X104use_current((/*RF2*/(C)->_target/*4*/));
  2874. }
  2875. /*FI]*/
  2876. return R;
  2877. }
  2878.  
  2879.  
  2880. T6 r153stupid_switch(T153* C,T0* a1){
  2881. T6 R=0;
  2882. R=r153call_proc_call_stupid_switch(C,a1);
  2883. return R;
  2884. }
  2885.  
  2886.  
  2887. T0* r153to_runnable(T153* C,T0* a1){
  2888. T0* R=NULL;
  2889. T0* _rf=NULL;
  2890. T0* _t=NULL;
  2891. _t=r153runnable_expression((/*RF2*/(C)->_target/*4*/),a1);
  2892. _rf=r153run_feature_for(C,_t,a1);
  2893. /*[IF*/
  2894. if(((/*RF2*/(C)->_run_feature/*12*/))==((void*)(NULL))){
  2895. (/*SFN*/C->_target)=_t;
  2896. (/*SFN*/C->_run_feature)=_rf;
  2897. r153run_feature_match(C);
  2898. R=((T0*)(C));
  2899. }
  2900.  else if((_t)==((void*)((/*RF2*/(C)->_target/*4*/)))){
  2901. R=((T0*)(C));
  2902. }
  2903. else{
  2904. {T153*n=((T153*)malloc(sizeof(*n))/*16*/);
  2905. *n=M153;
  2906. r153make(n,_t,(/*RF2*/(C)->_feature_name/*8*/));
  2907. R=((T0*)n);
  2908. }
  2909. R=r153to_runnable(((T153*)R),a1);
  2910. }
  2911. /*FI]*/
  2912. return R;
  2913. }
  2914.  
  2915.  
  2916. T0* r153make_runnable(T153* C,T0* a1,T0* a2,T0* a3){
  2917. T0* R=NULL;
  2918. /*[IF*/
  2919. if(((/*RF2*/(C)->_run_feature/*12*/))==((void*)(NULL))){
  2920. (/*SFN*/C->_target)=a1;
  2921. (/*SFN*/C->_run_feature)=a3;
  2922. R=((T0*)(C));
  2923. }
  2924. else{
  2925. {T153*n=((T153*)malloc(sizeof(*n))/*16*/);
  2926. *n=M153;
  2927. r153make(n,a1,(/*RF2*/(C)->_feature_name/*8*/));
  2928. R=((T0*)n);
  2929. }
  2930. /*[IRF3.3set_run_feature*/((((T153*)(((T153*)R))))->_run_feature)=(a3);
  2931. /*]*/
  2932. }
  2933. /*FI]*/
  2934. return R;
  2935. }
  2936.  
  2937.  
  2938. void r153finalize(T153* C){
  2939. T0* _rf=NULL;
  2940. T0* _rc=NULL;
  2941. _rf=(/*RF2*/(C)->_run_feature/*12*/);
  2942. _rc=X52run_class(/*SSWARF2*//*X334current_type*/(/*RF2*/(((T368*)_rf))->_current_type/*8*/));
  2943. (/*SFN*/C->_run_feature)=r50dynamic((T50*)(/*(IRF4.6first*/((/*RF2*/((T53*)((/*RF2*/(((T50*)_rc))->_running/*9*/)))->_storage/*0*/))[0]/*)*/),_rf);
  2944. }
  2945.  
  2946.  
  2947. T68 r153start_position(T153* C){
  2948. T68 R={NULL,0};
  2949. {T68 se_tmp0;
  2950. R=(*(se_tmp0=X82start_position((/*RF2*/(C)->_feature_name/*8*/)),&se_tmp0));
  2951. }
  2952. return R;
  2953. }
  2954.  
  2955.  
  2956. T0* r239to_runnable_integer(T239* C,T0* a1){
  2957. T0* R=NULL;
  2958. T0* _e=NULL;
  2959. T0* _ct=NULL;
  2960. /*[IF*/
  2961. if(((/*RF2*/(C)->_e_when/*4*/))==((void*)(NULL))){
  2962. (/*SFN*/C->_e_when)=a1;
  2963. _ct=/*SSWARF2*//*X334current_type*/(/*RF2*/((T368*)(r49top_rf((T49*)(oBC13small_eiffel))))->_current_type/*8*/);
  2964. _e=X104to_runnable((/*RF2*/(C)->_expression/*8*/),_ct);
  2965. /*[IF*/
  2966. if(((_e)!=((void*)(NULL)))&&(X52is_integer(X104result_type(_e)))){
  2967. (/*SFN*/C->_expression)=_e;
  2968. (/*SFN*/C->_expression_value)=X104to_integer((/*RF2*/(C)->_expression/*8*/));
  2969. r232add_when_item_1((T232*)((/*RF2*/(C)->_e_when/*4*/)),(T0*)C);
  2970. }
  2971. else{
  2972. {T68 se_tmp0;
  2973. r239error((*(se_tmp0=X104start_position((/*RF2*/(C)->_expression/*8*/)),&se_tmp0)),((T0*)ms14_21528));
  2974. }
  2975. }
  2976. /*FI]*/
  2977. R=((T0*)(C));
  2978. }
  2979. else{
  2980. {T239*n=((T239*)malloc(sizeof(*n))/*16*/);
  2981. *n=M239;
  2982. /*[IRF3.3make*/((((T239*)(n)))->_expression)=((/*RF2*/(C)->_expression/*8*/));
  2983. /*]*/
  2984. R=((T0*)n);
  2985. }
  2986. R=r239to_runnable_integer(((T239*)R),a1);
  2987. }
  2988. /*FI]*/
  2989. return R;
  2990. }
  2991.  
  2992.  
  2993. T0* r239to_runnable_character(T239* C,T0* a1){
  2994. T0* R=NULL;
  2995. T0* _e=NULL;
  2996. T0* _ct=NULL;
  2997. /*[IF*/
  2998. if(((/*RF2*/(C)->_e_when/*4*/))==((void*)(NULL))){
  2999. (/*SFN*/C->_e_when)=a1;
  3000. _ct=/*SSWARF2*//*X334current_type*/(/*RF2*/((T368*)(r49top_rf((T49*)(oBC13small_eiffel))))->_current_type/*8*/);
  3001. _e=X104to_runnable((/*RF2*/(C)->_expression/*8*/),_ct);
  3002. /*[IF*/
  3003. if(((_e)!=((void*)(NULL)))&&(X52is_character(X104result_type(_e)))){
  3004. (/*SFN*/C->_expression)=_e;
  3005. (/*SFN*/C->_expression_value)=X104to_integer((/*RF2*/(C)->_expression/*8*/));
  3006. r232add_when_item_1((T232*)((/*RF2*/(C)->_e_when/*4*/)),(T0*)C);
  3007. }
  3008. else{
  3009. {T68 se_tmp0;
  3010. r239error((*(se_tmp0=X104start_position((/*RF2*/(C)->_expression/*8*/)),&se_tmp0)),((T0*)ms14_25640));
  3011. }
  3012. }
  3013. /*FI]*/
  3014. R=((T0*)(C));
  3015. }
  3016. else{
  3017. {T239*n=((T239*)malloc(sizeof(*n))/*16*/);
  3018. *n=M239;
  3019. /*[IRF3.3make*/((((T239*)(n)))->_expression)=((/*RF2*/(C)->_expression/*8*/));
  3020. /*]*/
  3021. R=((T0*)n);
  3022. }
  3023. R=r239to_runnable_character(((T239*)R),a1);
  3024. }
  3025. /*FI]*/
  3026. return R;
  3027. }
  3028.  
  3029.  
  3030. T0* r239twin(T239* C){
  3031. T0* R=NULL;
  3032. R=malloc(sizeof(*C));
  3033. *((T239*)R)=*C;
  3034. return R;
  3035. }
  3036.  
  3037.  
  3038. void r239error(T68 a1,T0* a2){
  3039. r66add_position(a1);
  3040. /*[IRF3.6append*/{T0* b1=a2;
  3041. r7append((T7*)(oBC66explanation),b1);
  3042. }/*]*/
  3043. r66print_as_error((T66*)(oBC13eh));
  3044. }
  3045.  
  3046.  
  3047. T68 r239start_position(T239* C){
  3048. T68 R={NULL,0};
  3049. {T68 se_tmp0;
  3050. R=(*(se_tmp0=X104start_position((/*RF2*/(C)->_expression/*8*/)),&se_tmp0));
  3051. }
  3052. return R;
  3053. }
  3054.  
  3055.  
  3056. void r229compile_to_c_old(T229* C){
  3057. X104compile_to_c_old((/*RF2*/(C)->_expression/*4*/));
  3058. }
  3059.  
  3060.  
  3061. T2 r229static_value(T229* C){
  3062. T2 R=0;
  3063. R=X104static_value((/*RF2*/(C)->_expression/*4*/));
  3064. return R;
  3065. }
  3066.  
  3067.  
  3068. T6 r229is_current(T229* C){
  3069. T6 R=0;
  3070. R=X104is_current((/*RF2*/(C)->_expression/*4*/));
  3071. return R;
  3072. }
  3073.  
  3074.  
  3075. void r229dca_inline_argument(T229* C,T0* a1){
  3076. X104dca_inline_argument((/*RF2*/(C)->_expression/*4*/),a1);
  3077. }
  3078.  
  3079.  
  3080. T0* r229add_comment(T229* C,T0* a1){
  3081. T0* R=NULL;
  3082. /*[IF*/
  3083. if(((a1)==((void*)(NULL)))||((/*(IRF4.6count*/r44count(((T44*)((/*RF2*/(((T81*)a1))->_list/*8*/))))/*)*/)==(0))){
  3084. R=((T0*)(C));
  3085. }
  3086. else{
  3087. {T229*n=((T229*)malloc(sizeof(*n))/*12*/);
  3088. *n=M229;
  3089. r229make(n,(T0*)C,a1);
  3090. R=((T0*)n);
  3091. }
  3092. }
  3093. /*FI]*/
  3094. return R;
  3095. }
  3096.  
  3097.  
  3098. void r229mapping_c_target(T229* C,T0* a1){
  3099. X104mapping_c_target((/*RF2*/(C)->_expression/*4*/),a1);
  3100. }
  3101.  
  3102.  
  3103. void r229afd_check(T229* C){
  3104. X104afd_check((/*RF2*/(C)->_expression/*4*/));
  3105. }
  3106.  
  3107.  
  3108. void r229c_declare_for_old(T229* C){
  3109. X104c_declare_for_old((/*RF2*/(C)->_expression/*4*/));
  3110. }
  3111.  
  3112.  
  3113. T6 r229is_manifest_array(T229* C){
  3114. T6 R=0;
  3115. R=X104is_manifest_array((/*RF2*/(C)->_expression/*4*/));
  3116. return R;
  3117. }
  3118.  
  3119.  
  3120. void r229collect_c_tmp(T229* C){
  3121. X104collect_c_tmp((/*RF2*/(C)->_expression/*4*/));
  3122. }
  3123.  
  3124.  
  3125. T6 r229use_current(T229* C){
  3126. T6 R=0;
  3127. R=X104use_current((/*RF2*/(C)->_expression/*4*/));
  3128. return R;
  3129. }
  3130.  
  3131.  
  3132. T0* r229to_runnable(T229* C,T0* a1){
  3133. T0* R=NULL;
  3134. T0* _e=NULL;
  3135. _e=X104to_runnable((/*RF2*/(C)->_expression/*4*/),a1);
  3136. /*[IF*/
  3137. if(((/*RF2*/(C)->_expression/*4*/))==((void*)(_e))){
  3138. R=((T0*)(C));
  3139. }
  3140. else{
  3141. {T229*n=((T229*)malloc(sizeof(*n))/*12*/);
  3142. *n=M229;
  3143. r229make(n,_e,(/*RF2*/(C)->_comment/*8*/));
  3144. R=((T0*)n);
  3145. }
  3146. }
  3147. /*FI]*/
  3148. return R;
  3149. }
  3150.  
  3151.  
  3152. T2 r229to_integer(T229* C){
  3153. T2 R=0;
  3154. {T68 se_tmp0;
  3155. r229error((*(se_tmp0=r229start_position(C),&se_tmp0)),((T0*)ms14_45441));
  3156. }
  3157. return R;
  3158. }
  3159.  
  3160.  
  3161. T6 r229is_void(T229* C){
  3162. T6 R=0;
  3163. R=X104is_void((/*RF2*/(C)->_expression/*4*/));
  3164. return R;
  3165. }
  3166.  
  3167.  
  3168. T6 r229is_static(T229* C){
  3169. T6 R=0;
  3170. R=X104is_static((/*RF2*/(C)->_expression/*4*/));
  3171. return R;
  3172. }
  3173.  
  3174.  
  3175. void r229error(T68 a1,T0* a2){
  3176. r66add_position(a1);
  3177. /*[IRF3.6append*/{T0* b1=a2;
  3178. r7append((T7*)(oBC66explanation),b1);
  3179. }/*]*/
  3180. r66print_as_error((T66*)(oBC13eh));
  3181. }
  3182.  
  3183.  
  3184. T0* r229result_type(T229* C){
  3185. T0* R=NULL;
  3186. R=X104result_type((/*RF2*/(C)->_expression/*4*/));
  3187. return R;
  3188. }
  3189.  
  3190.  
  3191. T6 r229c_simple(T229* C){
  3192. T6 R=0;
  3193. R=X104c_simple((/*RF2*/(C)->_expression/*4*/));
  3194. return R;
  3195. }
  3196.  
  3197.  
  3198. T6 r229can_be_dropped(T229* C){
  3199. T6 R=0;
  3200. R=X104can_be_dropped((/*RF2*/(C)->_expression/*4*/));
  3201. return R;
  3202. }
  3203.  
  3204.  
  3205. T0* r229static_result_base_class(T229* C){
  3206. T0* R=NULL;
  3207. R=X104static_result_base_class((/*RF2*/(C)->_expression/*4*/));
  3208. return R;
  3209. }
  3210.  
  3211.  
  3212. void r229make(T229* C,T0* a1,T0* a2){
  3213. (/*SFN*/C->_expression)=a1;
  3214. (/*SFN*/C->_comment)=a2;
  3215. }
  3216.  
  3217.  
  3218. T6 r229is_manifest_string(T229* C){
  3219. T6 R=0;
  3220. R=X104is_manifest_string((/*RF2*/(C)->_expression/*4*/));
  3221. return R;
  3222. }
  3223.  
  3224.  
  3225. void r229assertion_check(T229* C,T3 a1){
  3226. X104assertion_check((/*RF2*/(C)->_expression/*4*/),a1);
  3227. }
  3228.  
  3229.  
  3230. void r229compile_to_c(T229* C){
  3231. X104compile_to_c((/*RF2*/(C)->_expression/*4*/));
  3232. }
  3233.  
  3234.  
  3235. T6 r229is_result(T229* C){
  3236. T6 R=0;
  3237. R=X104is_result((/*RF2*/(C)->_expression/*4*/));
  3238. return R;
  3239. }
  3240.  
  3241.  
  3242. T6 r229stupid_switch(T229* C,T0* a1){
  3243. T6 R=0;
  3244. R=X104stupid_switch((/*RF2*/(C)->_expression/*4*/),a1);
  3245. return R;
  3246. }
  3247.  
  3248.  
  3249. void r229mapping_c_arg(T229* C,T0* a1){
  3250. X104mapping_c_arg((/*RF2*/(C)->_expression/*4*/),a1);
  3251. }
  3252.  
  3253.  
  3254. T6 r229is_pre_computable(T229* C){
  3255. T6 R=0;
  3256. R=X104is_pre_computable((/*RF2*/(C)->_expression/*4*/));
  3257. return R;
  3258. }
  3259.  
  3260.  
  3261. T2 r229isa_dca_inline_argument(T229* C){
  3262. T2 R=0;
  3263. R=X104isa_dca_inline_argument((/*RF2*/(C)->_expression/*4*/));
  3264. return R;
  3265. }
  3266.  
  3267.  
  3268. T68 r229start_position(T229* C){
  3269. T68 R={NULL,0};
  3270. {T68 se_tmp0;
  3271. R=(*(se_tmp0=X104start_position((/*RF2*/(C)->_expression/*4*/)),&se_tmp0));
  3272. }
  3273. return R;
  3274. }
  3275.  
  3276.  
  3277. T0* r154runnable_expression(T0* a1,T0* a2){
  3278. T0* R=NULL;
  3279. R=X104to_runnable(a1,a2);
  3280. /*[IF*/
  3281. if((R)==((void*)(NULL))){
  3282. {T68 se_tmp0;
  3283. r66add_position((*(se_tmp0=X104start_position(a1),&se_tmp0)));
  3284. }
  3285. r154fatal_error(((T0*)ms116_16290));
  3286. }
  3287. /*FI]*/
  3288. return R;
  3289. }
  3290.  
  3291.  
  3292. void r154run_feature_match(T154* C,T0* a1){
  3293. r154run_feature_has_no_result(C);
  3294. X139match_with((/*RF2*/(C)->_arguments/*16*/),(/*RF2*/(C)->_run_feature/*12*/),a1);
  3295. }
  3296.  
  3297.  
  3298. T0* r154add_comment(T154* C,T0* a1){
  3299. T0* R=NULL;
  3300. /*[IF*/
  3301. if(((a1)==((void*)(NULL)))||((/*(IRF4.6count*/r44count(((T44*)((/*RF2*/(((T81*)a1))->_list/*8*/))))/*)*/)==(0))){
  3302. R=((T0*)(C));
  3303. }
  3304. /*AF*/else{
  3305. {T224*n=((T224*)malloc(sizeof(*n))/*12*/);
  3306. *n=M224;
  3307. r224make(n,(T0*)C,a1);
  3308. R=((T0*)n);
  3309. }
  3310. }
  3311. /*FI]*/
  3312. return R;
  3313. }
  3314.  
  3315.  
  3316. void r154with(T154* C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5){
  3317. (/*SFN*/C->_target)=a1;
  3318. (/*SFN*/C->_feature_name)=a2;
  3319. (/*SFN*/C->_arguments)=a3;
  3320. (/*SFN*/C->_run_feature)=a4;
  3321. r154run_feature_match(C,a5);
  3322. }
  3323.  
  3324.  
  3325. void r154afd_check(T154* C){
  3326. T0* _running=NULL;
  3327. T0* _rc=NULL;
  3328. /*[IF*/
  3329. if(((/*RF2*/(C)->_run_feature/*12*/))!=((void*)(NULL))){
  3330. _rc=X52run_class(X104result_type((/*RF2*/(C)->_target/*4*/)));
  3331. _running=(/*RF2*/(((T50*)_rc))->_running/*9*/);
  3332. /*[IF*/
  3333. if((_running)==((void*)(NULL))){
  3334. }
  3335.  else if((r53count(((T53*)_running)))>(1)){
  3336. r351update((/*RF2*/(C)->_target/*4*/),(/*RF2*/(C)->_run_feature/*12*/));
  3337. }
  3338. /*FI]*/
  3339. }
  3340. /*FI]*/
  3341. X104afd_check((/*RF2*/(C)->_target/*4*/));
  3342. /*[IF*/
  3343. {/*AT*//*SSPRF3*//*X139afd_check*/r139afd_check((T139*)((/*RF2*/(C)->_arguments/*16*/)));
  3344. }
  3345. /*FI]*/
  3346. }
  3347.  
  3348.  
  3349. void r154collect_c_tmp(T154* C){
  3350. /*[IF*/
  3351. if(((/*RF2*/(C)->_run_feature/*12*/))!=((void*)(NULL))){
  3352. X334collect_c_tmp((/*RF2*/(C)->_run_feature/*12*/));
  3353. }
  3354. /*FI]*/
  3355. X104collect_c_tmp((/*RF2*/(C)->_target/*4*/));
  3356. /*[IF*/
  3357. if(((/*RF2*/(C)->_arguments/*16*/))!=((void*)(NULL))){
  3358. /*SSPRF3*//*X139collect_c_tmp*/r139collect_c_tmp((T139*)((/*RF2*/(C)->_arguments/*16*/)));
  3359. }
  3360. /*FI]*/
  3361. }
  3362.  
  3363.  
  3364. T6 r154use_current(T154* C){
  3365. T6 R=0;
  3366. T0* _s=NULL;
  3367. T0* _ms=NULL;
  3368. /*[IF*/
  3369. if((((T0*)ms15_15070))==((void*)(X82to_string((/*RF2*/(C)->_feature_name/*8*/))))){
  3370. _ms=r154arg1(C);
  3371. if(NULL!=(_ms)){
  3372. switch(((T0*)_ms)->id){
  3373. case 161:
  3374. break;
  3375. default:
  3376. _ms=NULL;
  3377. }
  3378. }/*[IF*/
  3379. if((_ms)!=((void*)(NULL))){
  3380. r366used_for_c_inline(_ms);
  3381. _s=(/*RF2*/(((T161*)_ms))->_to_string/*12*/);
  3382. R=r7has(((T7*)_s),((T3)'C'));
  3383. }
  3384. /*FI]*/
  3385. }
  3386. else{
  3387. R=r154standard_use_current(C);
  3388. }
  3389. /*FI]*/
  3390. return R;
  3391. }
  3392.  
  3393.  
  3394. T0* r154runnable_args(T0* a1,T0* a2){
  3395. T0* R=NULL;
  3396. R=X139to_runnable(a1,a2);
  3397. /*[IF*/
  3398. if((R)==((void*)(NULL))){
  3399. {T68 se_tmp0;
  3400. r66add_position((*(se_tmp0=X139start_position(a1),&se_tmp0)));
  3401. }
  3402. r154fatal_error(((T0*)ms14_12870));
  3403. }
  3404. /*FI]*/
  3405. return R;
  3406. }
  3407.  
  3408.  
  3409. T0* r154to_runnable(T154* C,T0* a1){
  3410. T0* R=NULL;
  3411. T0* _rf=NULL;
  3412. T0* _a=NULL;
  3413. T0* _t=NULL;
  3414. _t=r154runnable_expression((/*RF2*/(C)->_target/*4*/),a1);
  3415. _a=r154runnable_args((/*RF2*/(C)->_arguments/*16*/),a1);
  3416. _rf=r154run_feature_for(C,_t,a1);
  3417. /*[IF*/
  3418. if(((/*RF2*/(C)->_run_feature/*12*/))==((void*)(NULL))){
  3419. (/*SFN*/C->_target)=_t;
  3420. (/*SFN*/C->_arguments)=_a;
  3421. (/*SFN*/C->_run_feature)=_rf;
  3422. r154run_feature_match(C,a1);
  3423. R=((T0*)(C));
  3424. }
  3425.  else if(((_t)==((void*)((/*RF2*/(C)->_target/*4*/))))&&((_a)==((void*)((/*RF2*/(C)->_arguments/*16*/))))){
  3426. R=((T0*)(C));
  3427. }
  3428. else{
  3429. {T154*n=((T154*)malloc(sizeof(*n))/*20*/);
  3430. *n=M154;
  3431. r154with(n,_t,(/*RF2*/(C)->_feature_name/*8*/),_a,_rf,a1);
  3432. R=((T0*)n);
  3433. }
  3434. }
  3435. /*FI]*/
  3436. return R;
  3437. }
  3438.  
  3439.  
  3440. T0* r154make_runnable(T154* C,T0* a1,T0* a2,T0* a3){
  3441. T0* R=NULL;
  3442. /*[IF*/
  3443. if(((/*RF2*/(C)->_run_feature/*12*/))==((void*)(NULL))){
  3444. (/*SFN*/C->_target)=a1;
  3445. (/*SFN*/C->_arguments)=a2;
  3446. (/*SFN*/C->_run_feature)=a3;
  3447. R=((T0*)(C));
  3448. }
  3449. else{
  3450. {T154*n=((T154*)malloc(sizeof(*n))/*20*/);
  3451. *n=M154;
  3452. r154make(n,a1,(/*RF2*/(C)->_feature_name/*8*/),a2);
  3453. R=((T0*)n);
  3454. }
  3455. /*[IRF3.3set_run_feature*/((((T154*)(((T154*)R))))->_run_feature)=(a3);
  3456. /*]*/
  3457. }
  3458. /*FI]*/
  3459. return R;
  3460. }
  3461.  
  3462.  
  3463. void r154finalize(T154* C){
  3464. T0* _rf=NULL;
  3465. T0* _rc=NULL;
  3466. _rf=(/*RF2*/(C)->_run_feature/*12*/);
  3467. _rc=X52run_class(/*SSWARF2*//*X334current_type*/(/*RF2*/(((T368*)_rf))->_current_type/*8*/));
  3468. (/*SFN*/C->_run_feature)=r50dynamic((T50*)(/*(IRF4.6first*/((/*RF2*/((T53*)((/*RF2*/(((T50*)_rc))->_running/*9*/)))->_storage/*0*/))[0]/*)*/),_rf);
  3469. }
  3470.  
  3471.  
  3472. T0* r154arg1(T154* C){
  3473. T0* R=NULL;
  3474. R=/*SSFRF4*//*X139first*//*(IRF4.3first*/(/*RF2*/((T139*)((/*RF2*/(C)->_arguments/*16*/)))->_first_one/*4*/)/*)*/;
  3475. return R;
  3476. }
  3477.  
  3478.  
  3479. T6 r154call_proc_call_stupid_switch(T154* C,T0* a1){
  3480. T6 R=0;
  3481. /*[IF*/
  3482. if(((/*RF2*/(C)->_arguments/*16*/))==((void*)(NULL))){
  3483. R=1;
  3484. }
  3485. else{
  3486. R=/*SSFRF4*//*X139stupid_switch*/r139stupid_switch((T139*)((/*RF2*/(C)->_arguments/*16*/)),a1);
  3487. }
  3488. /*FI]*/
  3489. /*[IF*/
  3490. if(R){
  3491. /*[IF*/
  3492. if(X104is_current((/*RF2*/(C)->_target/*4*/))){
  3493. /*[IF*/
  3494. if(r49same_base_feature((/*RF2*/(C)->_run_feature/*12*/),a1)){
  3495. R=(X334stupid_switch((/*RF2*/(C)->_run_feature/*12*/),a1))!=((void*)(NULL));
  3496. }
  3497. else{
  3498. R=0;
  3499. }
  3500. /*FI]*/
  3501. }
  3502. else{
  3503. R=X104stupid_switch((/*RF2*/(C)->_target/*4*/),a1);
  3504. }
  3505. /*FI]*/
  3506. }
  3507. /*FI]*/
  3508. return R;
  3509. }
  3510.  
  3511.  
  3512. T0* r154run_feature_for(T154* C,T0* a1,T0* a2){
  3513. T0* R=NULL;
  3514. T0* _bc=NULL;
  3515. T0* _rt=NULL;
  3516. T0* _rc=NULL;
  3517. _rt=X104result_type(a1);
  3518. /*[IF*/
  3519. if((_rt)!=((void*)(NULL))){
  3520. _rc=X52run_class(_rt);
  3521. /*[IF*/
  3522. if((_rc)!=((void*)(NULL))){
  3523. _bc=r50base_class(((T50*)_rc));
  3524. R=r51run_feature_for(((T51*)_bc),_rc,a1,(/*RF2*/(C)->_feature_name/*8*/),a2);
  3525. }
  3526. /*FI]*/
  3527. }
  3528. /*FI]*/
  3529. /*[IF*/
  3530. if((R)==((void*)(NULL))){
  3531. {T68 se_tmp0;
  3532. r66add_position((*(se_tmp0=X82start_position((/*RF2*/(C)->_feature_name/*8*/)),&se_tmp0)));
  3533. }
  3534. /*[IRF3.6append*/{T0* b1=((T0*)ms116_39025);
  3535. r7append((T7*)(oBC66explanation),b1);
  3536. }/*]*/
  3537. r66print_as_fatal_error((T66*)(oBC13eh));
  3538. }
  3539. /*FI]*/
  3540. return R;
  3541. }
  3542.  
  3543.  
  3544. void r154make(T154* C,T0* a1,T0* a2,T0* a3){
  3545. (/*SFN*/C->_target)=a1;
  3546. (/*SFN*/C->_feature_name)=a2;
  3547. (/*SFN*/C->_arguments)=a3;
  3548. }
  3549.  
  3550.  
  3551. void r154fatal_error(T0* a1){
  3552. /*[IRF3.6append*/{T0* b1=a1;
  3553. r7append((T7*)(oBC66explanation),b1);
  3554. }/*]*/
  3555. r66print_as_fatal_error((T66*)(oBC13eh));
  3556. }
  3557.  
  3558.  
  3559. void r154run_feature_has_no_result(T154* C){
  3560. /*[IF*/
  3561. if((X334result_type((/*RF2*/(C)->_run_feature/*12*/)))!=((void*)(NULL))){
  3562. {T68 se_tmp0;
  3563. r66add_position((*(se_tmp0=X334start_position((/*RF2*/(C)->_run_feature/*12*/)),&se_tmp0)));
  3564. }
  3565. {T68 se_tmp0;
  3566. r66add_position((*(se_tmp0=X82start_position((/*RF2*/(C)->_feature_name/*8*/)),&se_tmp0)));
  3567. }
  3568. r154fatal_error(((T0*)ms152_66627));
  3569. }
  3570. /*FI]*/
  3571. }
  3572.  
  3573.  
  3574. T6 r154standard_use_current(T154* C){
  3575. T6 R=0;
  3576. /*[IF*/
  3577. {/*AT*/R=/*SSFRF4*//*X139use_current*/r139use_current((T139*)((/*RF2*/(C)->_arguments/*16*/)));
  3578. }
  3579. /*FI]*/
  3580. /*[IF*/
  3581. if(R){
  3582. }
  3583.  else if(X104is_current((/*RF2*/(C)->_target/*4*/))){
  3584. R=X334use_current((/*RF2*/(C)->_run_feature/*12*/));
  3585. }
  3586. else{
  3587. R=X104use_current((/*RF2*/(C)->_target/*4*/));
  3588. }
  3589. /*FI]*/
  3590. return R;
  3591. }
  3592.  
  3593.  
  3594. void r154compile_to_c(T154* C){
  3595. {T68 se_tmp0;
  3596. r325se_trace_ins((T325*)(oBC13cpp),(*(se_tmp0=r154start_position(C),&se_tmp0)));
  3597. }
  3598. /*[IRF3.6call_proc_call_c2c*/{T154* C1=C;
  3599. r325put_cpc((T325*)(oBC13cpp),(T0*)C1);
  3600. }/*]*/
  3601. }
  3602.  
  3603.  
  3604. T6 r154stupid_switch(T154* C,T0* a1){
  3605. T6 R=0;
  3606. R=r154call_proc_call_stupid_switch(C,a1);
  3607. return R;
  3608. }
  3609.  
  3610.  
  3611. T68 r154start_position(T154* C){
  3612. T68 R={NULL,0};
  3613. {T68 se_tmp0;
  3614. R=(*(se_tmp0=X82start_position((/*RF2*/(C)->_feature_name/*8*/)),&se_tmp0));
  3615. }
  3616. return R;
  3617. }
  3618.  
  3619.  
  3620. T0* r285try_to_undefine(T285* C,T0* a1,T0* a2){
  3621. T0* R=NULL;
  3622. T0* _fn2=NULL;
  3623. {T68 se_tmp0;
  3624. r66add_position((*(se_tmp0=X82start_position(a1),&se_tmp0)));
  3625. }
  3626. _fn2=r83feature_name((T83*)((/*RF2*/(C)->_names/*8*/)),X82to_key(a1));
  3627. /*[IF*/
  3628. if((_fn2)!=((void*)(NULL))){
  3629. X82undefine_in(_fn2,a2);
  3630. }
  3631. /*FI]*/
  3632. /*[IRF3.2cancel*//*[IRF3.3clear*/((((T7*)((T7*)(oBC66explanation))))->_count)=(0);
  3633. /*]*/
  3634. /*[IRF3.3clear*/((((T67*)((T67*)(oBC66positions))))->_upper)=(-(1));
  3635. /*]*/
  3636. /*]*/
  3637. R=/*(IRF4.4try_to_undefine_aux*/((T0*)(C))/*)*/;
  3638. /*[IF*/
  3639. if((R)!=((void*)(NULL))){
  3640. X284set_clients(R,(/*RF2*/(C)->_clients/*16*/));
  3641. r285merge_header_comments(C,R);
  3642. }
  3643. else{
  3644. r51fatal_undefine(((T51*)a2),a1);
  3645. }
  3646. /*FI]*/
  3647. return R;
  3648. }
  3649.  
  3650.  
  3651. void r285check_obsolete(T285* C,T68 a1){
  3652. /*[IF*/
  3653. if(((/*RF2*/(C)->_obsolete_mark/*24*/))!=((void*)(NULL))){
  3654. /*[IF*/
  3655. if(!((/*RF2*/((T49*)(oBC13small_eiffel))->_short_flag/*5*/))){
  3656. r66add_position(a1);
  3657. /*[IRF3.6append*/{T0* b1=((T0*)ms90_19170);
  3658. r7append((T7*)(oBC66explanation),b1);
  3659. }/*]*/
  3660. /*[IRF3.6append*/{T0* b1=(/*RF2*/((T161*)((/*RF2*/(C)->_obsolete_mark/*24*/)))->_to_string/*12*/);
  3661. r7append((T7*)(oBC66explanation),b1);
  3662. }/*]*/
  3663. {T68 se_tmp0;
  3664. r66add_position((*(se_tmp0=r285start_position(C),&se_tmp0)));
  3665. }
  3666. r66print_as_warning((T66*)(oBC13eh));
  3667. }
  3668. /*FI]*/
  3669. }
  3670. /*FI]*/
  3671. }
  3672.  
  3673.  
  3674. T0* r285to_run_feature(T285* C,T0* a1,T0* a2){
  3675. T0* R=NULL;
  3676. {T386*n=((T386*)malloc(sizeof(*n))/*44*/);
  3677. *n=M386;
  3678. r386make(n,a1,a2,(T0*)C);
  3679. R=((T0*)n);
  3680. }
  3681. return R;
  3682. }
  3683.  
  3684.  
  3685. void r285error(T68 a1,T0* a2){
  3686. r66add_position(a1);
  3687. /*[IRF3.6append*/{T0* b1=a2;
  3688. r7append((T7*)(oBC66explanation),b1);
  3689. }/*]*/
  3690. r66print_as_error((T66*)(oBC13eh));
  3691. }
  3692.  
  3693.  
  3694. T6 r285is_not_mergeable_with(T285* C,T0* a1){
  3695. T6 R=0;
  3696. /*[IF*/
  3697. {/*AT*/R=(X90result_type(a1))!=((void*)(NULL));
  3698. }
  3699. /*FI]*/
  3700. /*[IF*/
  3701. if(R){
  3702. /*[IRF3.6append*/{T0* b1=((T0*)ms90_64152);
  3703. r7append((T7*)(oBC66explanation),b1);
  3704. }/*]*/
  3705. }
  3706. else{
  3707. /*[IF*/
  3708. if(((/*RF2*/(C)->_arguments/*20*/))==((void*)(NULL))){
  3709. R=(X90arguments(a1))!=((void*)(NULL));
  3710. }
  3711. else{
  3712. R=(X90arguments(a1))==((void*)(NULL));
  3713. }
  3714. /*FI]*/
  3715. /*[IF*/
  3716. if(R){
  3717. /*[IRF3.6append*/{T0* b1=((T0*)ms90_82612);
  3718. r7append((T7*)(oBC66explanation),b1);
  3719. }/*]*/
  3720. }
  3721.  else if(((/*RF2*/(C)->_arguments/*20*/))==((void*)(NULL))){
  3722. }
  3723.  else if((/*(IRF4.6count*/(/*RF2*/(((T182*)((/*RF2*/((T178*)((/*RF2*/(C)->_arguments/*20*/)))->_flat_list/*8*/))))->_upper/*12*/)/*)*/)!=(/*(IRF4.6count*/(/*RF2*/(((T182*)((/*RF2*/((T178*)(X90arguments(a1)))->_flat_list/*8*/))))->_upper/*12*/)/*)*/)){
  3724. /*[IRF3.6append*/{T0* b1=((T0*)ms90_66660);
  3725. r7append((T7*)(oBC66explanation),b1);
  3726. }/*]*/
  3727. R=1;
  3728. }
  3729. /*FI]*/
  3730. }
  3731. /*FI]*/
  3732. r285merge_header_comments(C,a1);
  3733. return R;
  3734. }
  3735.  
  3736.  
  3737. void r285set_header_comment(T285* C,T0* a1){
  3738. /*[IF*/
  3739. if(((a1)!=((void*)(NULL)))&&((/*(IRF4.6count*/r44count(((T44*)((/*RF2*/(((T81*)a1))->_list/*8*/))))/*)*/)>(1))){
  3740. (/*SFN*/C->_end_comment)=a1;
  3741. }
  3742. /*FI]*/
  3743. }
  3744.  
  3745.  
  3746. void r285set_rescue_compound(T285* C,T0* a1){
  3747. /*[IF*/
  3748. if((a1)!=((void*)(NULL))){
  3749. {T68 se_tmp0;
  3750. r66add_position((*(se_tmp0=r215start_position(((T215*)a1)),&se_tmp0)));
  3751. }
  3752. }
  3753. else{
  3754. {T68 se_tmp0;
  3755. r66add_position((*(se_tmp0=r285start_position(C),&se_tmp0)));
  3756. }
  3757. }
  3758. /*FI]*/
  3759. /*[IRF3.6append*/{T0* b1=((T0*)ms284_124456);
  3760. r7append((T7*)(oBC66explanation),b1);
  3761. }/*]*/
  3762. r66print_as_fatal_error((T66*)(oBC13eh));
  3763. }
  3764.  
  3765.  
  3766. void r285make_routine(T285* C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5){
  3767. /*[IRF3.3make_e_feature*/((((T285*)(C)))->_names)=(a1);
  3768. /*]*/
  3769. (/*SFN*/C->_header_comment)=a4;
  3770. (/*SFN*/C->_arguments)=a2;
  3771. (/*SFN*/C->_obsolete_mark)=a3;
  3772. (/*SFN*/C->_require_assertion)=a5;
  3773. }
  3774.  
  3775.  
  3776. void r285add_into(T285* C,T0* a1){
  3777. T0* _fn=NULL;
  3778. T2 _i=0;
  3779. {T68 se_tmp0;
  3780. (/*SFN*/C->_base_class)=(/*RF2*/((*(se_tmp0=X82start_position(r83item((T83*)((/*RF2*/(C)->_names/*8*/)),1)),&se_tmp0)))._base_class/*0*/);
  3781. }
  3782. _i=1;
  3783. while (!((_i)>(r83count((T83*)((/*RF2*/(C)->_names/*8*/))))))
  3784. {
  3785. _fn=r83item((T83*)((/*RF2*/(C)->_names/*8*/)),_i);
  3786. /*[IF*/
  3787. if(r91has(((T91*)a1),X82to_key(_fn))){
  3788. _fn=/*SSFRF4*//*X90first_name*//*(IRF4.6first_name*/(/*RF2*/(((T83*)((/*RF2*/((T198*)(r91at(((T91*)a1),X82to_key(_fn))))->_names/*8*/))))->_first/*0*/)/*)*/;
  3789. {T68 se_tmp0;
  3790. r66add_position((*(se_tmp0=X82start_position(_fn),&se_tmp0)));
  3791. }
  3792. {T68 se_tmp0;
  3793. r66add_position((*(se_tmp0=X82start_position(r83item((T83*)((/*RF2*/(C)->_names/*8*/)),_i)),&se_tmp0)));
  3794. }
  3795. /*[IRF3.6append*/{T0* b1=((T0*)ms90_41470);
  3796. r7append((T7*)(oBC66explanation),b1);
  3797. }/*]*/
  3798. /*[IRF3.6append*/{T0* b1=X82to_string(_fn);
  3799. r7append((T7*)(oBC66explanation),b1);
  3800. }/*]*/
  3801. /*[IRF3.6append*/{T0* b1=((T0*)ms14_46);
  3802. r7append((T7*)(oBC66explanation),b1);
  3803. }/*]*/
  3804. r66print_as_error((T66*)(oBC13eh));
  3805. }
  3806. else{
  3807. r91put(((T91*)a1),(T0*)C,X82to_key(_fn));
  3808. }
  3809. /*FI]*/
  3810. _i=(_i)+(1);
  3811. }
  3812. }
  3813.  
  3814.  
  3815. T6 r285can_hide(T285* C,T0* a1,T0* a2){
  3816. T6 R=0;
  3817. /*[IF*/
  3818. if((/*(IRF4.1result_type*/NULL/*)*/)!=((void*)(X90result_type(a1)))){
  3819. /*[IF*/
  3820. {/*AT*/{T68 se_tmp0;
  3821. r66add_position((*(se_tmp0=X90start_position(a1),&se_tmp0)));
  3822. }
  3823. {T68 se_tmp0;
  3824. r285error((*(se_tmp0=r285start_position(C),&se_tmp0)),((T0*)ms90_64152));
  3825. }
  3826. }
  3827. /*FI]*/
  3828. }
  3829. /*FI]*/
  3830. /*[IF*/
  3831. if(((/*RF2*/(C)->_arguments/*20*/))!=((void*)(X90arguments(a1)))){
  3832. /*[IF*/
  3833. if((((/*RF2*/(C)->_arguments/*20*/))==((void*)(NULL)))||((X90arguments(a1))==((void*)(NULL)))){
  3834. {T68 se_tmp0;
  3835. r66add_position((*(se_tmp0=X90start_position(a1),&se_tmp0)));
  3836. }
  3837. {T68 se_tmp0;
  3838. r285error((*(se_tmp0=r285start_position(C),&se_tmp0)),((T0*)ms90_82612));
  3839. }
  3840. }
  3841.  else if((/*(IRF4.6count*/(/*RF2*/(((T182*)((/*RF2*/((T178*)((/*RF2*/(C)->_arguments/*20*/)))->_flat_list/*8*/))))->_upper/*12*/)/*)*/)!=(/*(IRF4.6count*/(/*RF2*/(((T182*)((/*RF2*/((T178*)(X90arguments(a1)))->_flat_list/*8*/))))->_upper/*12*/)/*)*/)){
  3842. {T68 se_tmp0;
  3843. r66add_position((*(se_tmp0=X90start_position(a1),&se_tmp0)));
  3844. }
  3845. {T68 se_tmp0;
  3846. r285error((*(se_tmp0=r285start_position(C),&se_tmp0)),((T0*)ms90_66660));
  3847. }
  3848. }
  3849. /*FI]*/
  3850. }
  3851. /*FI]*/
  3852. /*[IF*/
  3853. if((/*(IRF4.9nb_errors*/(/*RF2*/((T66*)(oBC13eh))->_error_counter/*0*/)/*)*/)==(0)){
  3854. /*[IF*/
  3855. /*AF*//*AE*/
  3856. /*FI]*/
  3857. }
  3858. /*FI]*/
  3859. /*[IF*/
  3860. if((/*(IRF4.9nb_errors*/(/*RF2*/((T66*)(oBC13eh))->_error_counter/*0*/)/*)*/)==(0)){
  3861. /*[IF*/
  3862. if(((/*RF2*/(C)->_arguments/*20*/))!=((void*)(NULL))){
  3863. /*[IF*/
  3864. if(!(r178is_a_in((T178*)((/*RF2*/(C)->_arguments/*20*/)),X90arguments(a1),a2))){
  3865. {T68 se_tmp0;
  3866. r66add_position((*(se_tmp0=X90start_position(a1),&se_tmp0)));
  3867. }
  3868. {T68 se_tmp0;
  3869. r66add_position((*(se_tmp0=r285start_position(C),&se_tmp0)));
  3870. }
  3871. /*[IRF3.6append*/{T0* b1=((T0*)ms90_51136);
  3872. r7append((T7*)(oBC66explanation),b1);
  3873. }/*]*/
  3874. /*[IRF3.6append*/{T0* b1=X52run_time_mark((/*RF2*/(((T50*)a2))->_current_type/*0*/));
  3875. r7append((T7*)(oBC66explanation),b1);
  3876. }/*]*/
  3877. /*[IRF3.6append*/{T0* b1=((T0*)ms14_46);
  3878. r7append((T7*)(oBC66explanation),b1);
  3879. }/*]*/
  3880. r66print_as_error((T66*)(oBC13eh));
  3881. }
  3882. /*FI]*/
  3883. }
  3884. /*FI]*/
  3885. }
  3886. /*FI]*/
  3887. R=(/*(IRF4.9nb_errors*/(/*RF2*/((T66*)(oBC13eh))->_error_counter/*0*/)/*)*/)==(0);
  3888. /*[IF*/
  3889. if(R){
  3890. r285merge_header_comments(C,a1);
  3891. }
  3892. /*FI]*/
  3893. return R;
  3894. }
  3895.  
  3896.  
  3897. void r285from_effective(T285* C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5){
  3898. {T83*n=((T83*)malloc(sizeof(*n))/*8*/);
  3899. *n=M83;
  3900. /*[IRF3.3make_1*/((((T83*)(n)))->_first)=(a1);
  3901. /*]*/
  3902. (/*SFN*/C->_names)=((T0*)n);
  3903. }
  3904. r285make_routine(C,(/*RF2*/(C)->_names/*8*/),a2,NULL,NULL,a3);
  3905. /*[IRF3.3set_ensure_assertion*/((((T285*)(C)))->_ensure_assertion)=(a4);
  3906. /*]*/
  3907. (/*SFN*/C->_base_class)=a5;
  3908. }
  3909.  
  3910.  
  3911. void r285merge_header_comments(T285* C,T0* a1){
  3912. /*[IF*/
  3913. if((/*RF2*/((T49*)(oBC13small_eiffel))->_short_flag/*5*/)){
  3914. /*[IF*/
  3915. if(((/*RF2*/(C)->_header_comment/*12*/))==((void*)(NULL))){
  3916. (/*SFN*/C->_header_comment)=/*SSWARF2*//*X90header_comment*/(/*RF2*/(((T198*)a1))->_header_comment/*12*/);
  3917. }
  3918.  else if((/*SSWARF2*//*X90header_comment*/(/*RF2*/(((T198*)a1))->_header_comment/*12*/))==((void*)(NULL))){
  3919. X90set_header_comment(a1,(/*RF2*/(C)->_header_comment/*12*/));
  3920. }
  3921. /*FI]*/
  3922. }
  3923. /*FI]*/
  3924. }
  3925.  
  3926.  
  3927. T68 r285start_position(T285* C){
  3928. T68 R={NULL,0};
  3929. {T68 se_tmp0;
  3930. R=(*(se_tmp0=X82start_position(/*(IRF4.6first_name*/(/*RF2*/(((T83*)((/*RF2*/(C)->_names/*8*/))))->_first/*0*/)/*)*/),&se_tmp0));
  3931. }
  3932. return R;
  3933. }
  3934.  
  3935.  
  3936. void r246make(T246* C,T68 a1,T0* a2){
  3937. (/*SFN*/C->_start_position)=a1;
  3938. (/*SFN*/C->_writable)=a2;
  3939. }
  3940.  
  3941.  
  3942. void r246fatal_error(T0* a1){
  3943. /*[IRF3.6append*/{T0* b1=a1;
  3944. r7append((T7*)(oBC66explanation),b1);
  3945. }/*]*/
  3946. r66print_as_fatal_error((T66*)(oBC13eh));
  3947. }
  3948.  
  3949.